src 0.4.0 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/src/git/branch.rb +26 -0
- data/lib/src/git.rb +5 -3
- data/lib/src.rb +10 -0
- data/version +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: cbded57c54e70ec9ff4b05f74162cb27aaaf66aa
|
4
|
+
data.tar.gz: 0a073d23861b202d1609731fc79bf09d6d7cc1a6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5852bfdb8dcf4275db417726b1ab74c37fabc4daa6f1cdb96250b9f25a20b92797e3b9bd432ebaa42e97234c67c9b67be166d7881c95f87f8537411a62815113
|
7
|
+
data.tar.gz: 241bb57f0282271f2a3e47201a798d9e347484734f730d8120619365c4889e8605072671bb00648fb360bf3bce964896bd47898f387d31808c7d1d589d43d70d
|
data/lib/src/git/branch.rb
CHANGED
@@ -2,6 +2,10 @@ module SRC::Git
|
|
2
2
|
class Branch
|
3
3
|
VERSION_FILE = 'version'
|
4
4
|
|
5
|
+
AHEAD = /# Your branch is ahead/
|
6
|
+
BEHIND = /# Your branch is behind/
|
7
|
+
DIVERGED = /# Your branch and .* have diverged/
|
8
|
+
|
5
9
|
attr_reader :name
|
6
10
|
|
7
11
|
class << self
|
@@ -91,6 +95,28 @@ module SRC::Git
|
|
91
95
|
end
|
92
96
|
end
|
93
97
|
|
98
|
+
def status
|
99
|
+
checked_out do
|
100
|
+
`git status -uno`.chomp
|
101
|
+
end
|
102
|
+
end
|
103
|
+
|
104
|
+
def remote_ahead?
|
105
|
+
status =~ AHEAD
|
106
|
+
end
|
107
|
+
|
108
|
+
def remote_behind?
|
109
|
+
status =~ BEHIND
|
110
|
+
end
|
111
|
+
|
112
|
+
def remote_diverged?
|
113
|
+
status =~ DIVERGED
|
114
|
+
end
|
115
|
+
|
116
|
+
def remote_up_to_date?
|
117
|
+
!(remote_diverged? || remote_behind? || remote_ahead?)
|
118
|
+
end
|
119
|
+
|
94
120
|
def to_s
|
95
121
|
name
|
96
122
|
end
|
data/lib/src/git.rb
CHANGED
data/lib/src.rb
CHANGED
@@ -1,3 +1,5 @@
|
|
1
|
+
require 'src/git'
|
2
|
+
|
1
3
|
module SRC
|
2
4
|
BRANCHES = {
|
3
5
|
master: nil,
|
@@ -17,13 +19,21 @@ module SRC
|
|
17
19
|
}
|
18
20
|
|
19
21
|
def self.check
|
22
|
+
SRC::Git.fetch
|
23
|
+
|
20
24
|
report = []
|
25
|
+
|
21
26
|
branches.each_with_index do |branch, i|
|
27
|
+
|
22
28
|
branches[(i + 1)..-1].each do |superset|
|
23
29
|
unless branch.subset_of?(superset)
|
24
30
|
report << "#{branch} should be merged into #{superset}"
|
25
31
|
end
|
26
32
|
end
|
33
|
+
|
34
|
+
unless branch.remote_up_to_date?
|
35
|
+
report << "#{branch} is not up to date with its remote"
|
36
|
+
end
|
27
37
|
end
|
28
38
|
|
29
39
|
if report.empty?
|
data/version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.5.0
|