github-pivotal-flow 0.0.5 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 96f8e674edd44441caf0dd7f407730f55a171a3f
4
+ data.tar.gz: 97b78ad1be19763ce08bbedfec0b4b3794e906f6
5
+ SHA512:
6
+ metadata.gz: d8036b44e6e88d57b2bfa537bdf51ebe9e83e5b5d1864f5915e246bdedc7bd9be19ee987c7a7d0a949dae5ecdf7fbf0c448c5c28e15396cf6ca449488d49e09e
7
+ data.tar.gz: a213f34c076c60a34debc78964cf218a9853370d437e3b7151f6dfd3b39c525ed45aff464cd44c62da559a9ae19a778a06bfc7303009b108cec8b8e46cef59a1
@@ -58,6 +58,15 @@ module GithubPivotalFlow
58
58
  # @return [PivotalTracker::Story] the story associated with the current development branch
59
59
  def story(project)
60
60
  story_id = Git.get_config(KEY_STORY_ID, :branch)
61
+ if story_id.blank? && (matchdata = /^[a-z0-9_\-]+\/(\d+)(-[a-z0-9_\-]+)?$/i.match(Git.current_branch))
62
+ story_id = matchdata[1]
63
+ Git.set_config(KEY_STORY_ID, story_id, :branch) unless story_id.blank?
64
+ end
65
+ if story_id.blank?
66
+ story_id = ask('What Pivotal story ID is this branch associated with?').strip
67
+ Git.set_config(KEY_STORY_ID, story_id, :branch) unless story_id.blank?
68
+ end
69
+ return nil if story_id.blank?
61
70
  Story.new(project.stories.find(story_id.to_i), :branch_name => Git.current_branch)
62
71
  end
63
72
 
@@ -126,7 +126,9 @@ module GithubPivotalFlow
126
126
  def self.add_hook(name, source, overwrite = false)
127
127
  hooks_directory = File.join repository_root, '.git', 'hooks'
128
128
  hook = File.join hooks_directory, name
129
-
129
+ puts "Overwrite: #{overwrite}"
130
+ puts "Hook: #{hook}"
131
+ puts "File.exists?: #{File.exist?(hook)}"
130
132
  if overwrite || !File.exist?(hook)
131
133
  print "Creating Git hook #{name}... "
132
134
 
@@ -54,17 +54,49 @@ module GithubPivotalFlow
54
54
  @configuration.story = Story.new(PivotalTracker::Story.new(:id => 12345678))
55
55
  end
56
56
 
57
- it 'return a story when requested' do
58
- project = double('project')
59
- stories = double('stories')
60
- story = double('story')
61
- Git.should_receive(:get_config).with('pivotal-story-id', :branch).and_return('12345678')
62
- project.should_receive(:stories).and_return(stories)
63
- stories.should_receive(:find).with(12345678).and_return(story)
57
+ describe 'story' do
58
+ it 'fetches the story based on the story id stored inside the git config' do
59
+ project = double('project')
60
+ stories = double('stories')
61
+ story = double('story')
62
+ Git.should_receive(:get_config).with('pivotal-story-id', :branch).and_return('12345678')
63
+ project.should_receive(:stories).and_return(stories)
64
+ stories.should_receive(:find).with(12345678).and_return(story)
65
+
66
+ result = @configuration.story project
67
+
68
+ expect(result.story).to eq(story)
69
+ end
70
+
71
+ it 'uses the branch name to deduce the story id if no git config is found' do
72
+ project = double('project')
73
+ stories = double('stories')
74
+ story = double('story')
75
+ Git.stub(:current_branch).and_return('feature/12345678-sample_feature')
76
+ Git.should_receive(:get_config).with('pivotal-story-id', :branch).and_return(' ')
77
+ project.should_receive(:stories).and_return(stories)
78
+ stories.should_receive(:find).with(12345678).and_return(story)
64
79
 
65
- result = @configuration.story project
80
+ result = @configuration.story project
81
+
82
+ expect(result.story).to eq(story)
83
+ end
66
84
 
67
- expect(result).to be_a(Story)
85
+ it 'prompts for the story id if the branch name does not match the known format' do
86
+ project = double('project')
87
+ stories = double('stories')
88
+ story = double('story')
89
+ Git.stub(:current_branch).and_return('unknownformat')
90
+ Git.should_receive(:get_config).with('pivotal-story-id', :branch).and_return(' ')
91
+ @configuration.should_receive(:ask).and_return('12345678')
92
+ Git.should_receive(:set_config).with('pivotal-story-id', '12345678', :branch)
93
+ project.should_receive(:stories).and_return(stories)
94
+ stories.should_receive(:find).with(12345678).and_return(story)
95
+
96
+ result = @configuration.story project
97
+
98
+ expect(result.story).to eq(story)
99
+ end
68
100
  end
69
101
 
70
102
  describe 'github_project' do
@@ -4,164 +4,183 @@ module GithubPivotalFlow
4
4
  describe Git do
5
5
 
6
6
  before do
7
- $stdout = StringIO.new
8
- $stderr = StringIO.new
7
+ #$stdout = StringIO.new
8
+ #$stderr = StringIO.new
9
9
  end
10
10
 
11
- it 'should return the current branch name' do
12
- Shell.should_receive(:exec).with('git branch', true).and_return(" master\n * dev_branch")
11
+ describe '.current_branch' do
12
+ it 'returns the current branch name' do
13
+ Shell.should_receive(:exec).with('git branch', true).and_return(" master\n * dev_branch")
13
14
 
14
- current_branch = Git.current_branch
15
+ current_branch = Git.current_branch
15
16
 
16
- expect(current_branch).to eq('dev_branch')
17
+ expect(current_branch).to eq('dev_branch')
18
+ end
17
19
  end
18
20
 
19
- it 'should return the repository root' do
20
- Dir.mktmpdir do |root|
21
- child_directory = File.expand_path 'child', root
22
- Dir.mkdir child_directory
21
+ describe '.repository_root' do
22
+ it 'returns the repository root' do
23
+ Dir.mktmpdir do |root|
24
+ child_directory = File.expand_path 'child', root
25
+ Dir.mkdir child_directory
23
26
 
24
- git_directory = File.expand_path '.git', root
25
- Dir.mkdir git_directory
27
+ git_directory = File.expand_path '.git', root
28
+ Dir.mkdir git_directory
26
29
 
27
- Dir.should_receive(:pwd).and_return(child_directory)
30
+ Dir.should_receive(:pwd).and_return(child_directory)
28
31
 
29
- repository_root = Git.repository_root
32
+ repository_root = Git.repository_root
30
33
 
31
- expect(repository_root).to eq(root)
34
+ expect(repository_root).to eq(root)
35
+ end
32
36
  end
33
- end
34
37
 
35
- it 'should raise an error there is no repository root' do
36
- Dir.mktmpdir do |root|
37
- child_directory = File.expand_path 'child', root
38
- Dir.mkdir child_directory
38
+ it 'raises an error if there is no repository root' do
39
+ Dir.mktmpdir do |root|
40
+ child_directory = File.expand_path 'child', root
41
+ Dir.mkdir child_directory
39
42
 
40
- Dir.should_receive(:pwd).and_return(child_directory)
43
+ Dir.should_receive(:pwd).and_return(child_directory)
41
44
 
42
- expect { Git.repository_root }.to raise_error
45
+ expect { Git.repository_root }.to raise_error
46
+ end
43
47
  end
44
48
  end
45
49
 
46
- it 'should get configuration when :branch scope is specified' do
47
- Git.should_receive(:current_branch).and_return('test_branch_name')
48
- Shell.should_receive(:exec).with('git config branch.test_branch_name.test_key', false).and_return('test_value')
50
+ describe '.get_config' do
51
+ it 'gets configuration scoped by branch when :branch scope is specified' do
52
+ Git.should_receive(:current_branch).and_return('test_branch_name')
53
+ Shell.should_receive(:exec).with('git config branch.test_branch_name.test_key', false).and_return('test_value')
49
54
 
50
- value = Git.get_config 'test_key', :branch
55
+ value = Git.get_config 'test_key', :branch
51
56
 
52
- expect(value).to eq('test_value')
53
- end
57
+ expect(value).to eq('test_value')
58
+ end
54
59
 
55
- it 'should get configuration when :inherited scope is specified' do
56
- Shell.should_receive(:exec).with('git config test_key', false).and_return('test_value')
60
+ it 'gets configuration when :inherited scope is specified' do
61
+ Shell.should_receive(:exec).with('git config test_key', false).and_return('test_value')
57
62
 
58
- value = Git.get_config 'test_key', :inherited
63
+ value = Git.get_config 'test_key', :inherited
59
64
 
60
- expect(value).to eq('test_value')
61
- end
65
+ expect(value).to eq('test_value')
66
+ end
62
67
 
63
- it 'should raise an error when an unknown scope is specified (get)' do
64
- expect { Git.get_config 'test_key', :unknown }.to raise_error
68
+ it 'raises an error when an unknown scope is specified (get)' do
69
+ expect { Git.get_config 'test_key', :unknown }.to raise_error
70
+ end
65
71
  end
66
72
 
67
- it 'should set configuration when :branch scope is specified' do
68
- Git.should_receive(:current_branch).and_return('test_branch_name')
69
- Shell.should_receive(:exec).with('git config --local branch.test_branch_name.test_key test_value', true)
73
+ describe '.set_config' do
74
+ it 'sets configuration when :branch scope is specified' do
75
+ Git.should_receive(:current_branch).and_return('test_branch_name')
76
+ Shell.should_receive(:exec).with('git config --local branch.test_branch_name.test_key test_value', true)
70
77
 
71
- Git.set_config 'test_key', 'test_value', :branch
72
- end
78
+ Git.set_config 'test_key', 'test_value', :branch
79
+ end
73
80
 
74
- it 'should set configuration when :global scope is specified' do
75
- Shell.should_receive(:exec).with('git config --global test_key test_value', true)
81
+ it 'sets configuration when :global scope is specified' do
82
+ Shell.should_receive(:exec).with('git config --global test_key test_value', true)
76
83
 
77
- Git.set_config 'test_key', 'test_value', :global
78
- end
84
+ Git.set_config 'test_key', 'test_value', :global
85
+ end
79
86
 
80
- it 'should set configuration when :local scope is specified' do
81
- Shell.should_receive(:exec).with('git config --local test_key test_value', true)
87
+ it 'sets configuration when :local scope is specified' do
88
+ Shell.should_receive(:exec).with('git config --local test_key test_value', true)
82
89
 
83
- Git.set_config 'test_key', 'test_value', :local
84
- end
90
+ Git.set_config 'test_key', 'test_value', :local
91
+ end
85
92
 
86
- it 'should raise an error when an unknown scope is specified (set)' do
87
- expect { Git.set_config 'test_key', 'test_value', :unknown }.to raise_error
93
+ it 'raises an error when an unknown scope is specified (set)' do
94
+ expect { Git.set_config 'test_key', 'test_value', :unknown }.to raise_error
95
+ end
88
96
  end
89
97
 
90
- it 'should create a branch and set the root_branch and root_remote properties on it' do
91
- Git.stub(:current_branch).and_return('master')
92
- Shell.should_receive(:exec).with('git branch --quiet dev_branch', true)
93
-
94
- Git.create_branch 'dev_branch'
98
+ describe '.create_branch' do
99
+ it 'creates a branch' do
100
+ Git.stub(:current_branch).and_return('master')
101
+ Shell.should_receive(:exec).with('git branch --quiet dev_branch', true)
102
+ Git.create_branch 'dev_branch'
103
+ end
95
104
  end
96
105
 
97
- it 'should not add a hook if it already exists' do
98
- Dir.mktmpdir do |root|
99
- Git.should_receive(:repository_root).and_return(root)
100
- hook = "#{root}/.git/hooks/prepare-commit-msg"
101
- File.should_receive(:exist?).with(hook).and_return(true)
106
+ #FIXME: Can't seem to set an expectation on File for some reason...
107
+ describe '.add_hook' do
108
+ it 'does not add a hook if it already exists' do
109
+ Dir.mktmpdir do |root|
110
+ Git.should_receive(:repository_root).and_return(root)
111
+ hook = "#{root}/.git/hooks/prepare-commit-msg"
112
+ File.should_receive(:exists?).with(hook).and_return(true)
102
113
 
103
- Git.add_hook 'prepare-commit-msg', __FILE__
104
-
105
- File.should_receive(:exist?).and_call_original
106
- expect(File.exist?(hook)).to be_false
114
+ Git.add_hook 'prepare-commit-msg', __FILE__
115
+ File.should_receive(:exist?).and_call_original
116
+ expect(File.exist?(hook)).to be_false
117
+ end
107
118
  end
108
- end
109
119
 
110
- it 'should add a hook if it does not exist' do
111
- Dir.mktmpdir do |root|
112
- Git.should_receive(:repository_root).and_return(root)
113
- hook = "#{root}/.git/hooks/prepare-commit-msg"
114
- File.should_receive(:exist?).with(hook).and_return(false)
120
+ it 'adds a hook if it does not exist' do
121
+ Dir.mktmpdir do |root|
122
+ Git.should_receive(:repository_root).and_return(root)
123
+ hook = "#{root}/.git/hooks/prepare-commit-msg"
124
+ File.should_receive(:exist?).with(hook).and_return(false)
115
125
 
116
- Git.add_hook 'prepare-commit-msg', __FILE__
126
+ Git.add_hook 'prepare-commit-msg', __FILE__
117
127
 
118
- File.should_receive(:exist?).and_call_original
119
- expect(File.exist?(hook)).to be_true
128
+ File.should_receive(:exist?).and_call_original
129
+ expect(File.exist?(hook)).to be_true
130
+ end
120
131
  end
121
- end
122
132
 
123
- it 'should add a hook if it already exists and overwrite is true' do
124
- Dir.mktmpdir do |root|
125
- Git.should_receive(:repository_root).and_return(root)
126
- hook = "#{root}/.git/hooks/prepare-commit-msg"
133
+ it 'adds a hook if it already exists and overwrite is true' do
134
+ Dir.mktmpdir do |root|
135
+ Git.should_receive(:repository_root).and_return(root)
136
+ hook = "#{root}/.git/hooks/prepare-commit-msg"
127
137
 
128
- Git.add_hook 'prepare-commit-msg', __FILE__, true
138
+ Git.add_hook 'prepare-commit-msg', __FILE__, true
129
139
 
130
- File.should_receive(:exist?).and_call_original
131
- expect(File.exist?(hook)).to be_true
140
+ File.should_receive(:exist?).and_call_original
141
+ expect(File.exist?(hook)).to be_true
142
+ end
132
143
  end
133
144
  end
134
145
 
135
- it 'should merge and delete branches' do
136
- Shell.should_receive(:exec).with("git merge --quiet --no-ff -m \"Merge development_branch to master\" development_branch", true)
146
+ describe '.merge' do
147
+ it 'merges branches' do
148
+ Shell.should_receive(:exec).with("git merge --quiet --no-ff -m \"Merge development_branch to master\" development_branch", true)
137
149
 
138
- Git.merge 'development_branch', commit_message: 'Merge development_branch to master', no_ff: true
150
+ Git.merge 'development_branch', commit_message: 'Merge development_branch to master', no_ff: true
151
+ end
139
152
  end
140
153
 
141
- it 'should push changes without refs' do
142
- Git.should_receive(:get_config).with('remote', :branch).and_return('origin')
143
- Shell.should_receive(:exec).with('git push --quiet origin ', true)
154
+ describe '.push' do
155
+ it 'pushes changes back to the origin without refs' do
156
+ Git.should_receive(:get_config).with('remote', :branch).and_return('origin')
157
+ Shell.should_receive(:exec).with('git push --quiet origin ', true)
144
158
 
145
- Git.push
146
- end
159
+ Git.push
160
+ end
147
161
 
148
- it 'should push changes with refs' do
149
- Git.should_receive(:get_config).with('remote', :branch).and_return('origin')
150
- Shell.should_receive(:exec).with('git push --quiet origin foo bar', true)
162
+ it 'pushes changes back to the origin with refs' do
163
+ Git.should_receive(:get_config).with('remote', :branch).and_return('origin')
164
+ Shell.should_receive(:exec).with('git push --quiet origin foo bar', true)
151
165
 
152
- Git.push 'foo', 'bar'
166
+ Git.push 'foo', 'bar'
167
+ end
153
168
  end
154
169
 
155
- it 'should create a commit' do
156
- Shell.should_receive(:exec).with("git commit --quiet --allow-empty -m \"test_message\"", true)
170
+ describe '.commit' do
171
+ it 'creates a commit' do
172
+ Shell.should_receive(:exec).with("git commit --quiet --allow-empty -m \"test_message\"", true)
157
173
 
158
- Git.commit commit_message: 'test_message', allow_empty: true
174
+ Git.commit commit_message: 'test_message', allow_empty: true
175
+ end
159
176
  end
160
177
 
161
- it 'should create a tag' do
162
- Shell.should_receive(:exec).with('git tag 1.0.0.RELEASE', true)
178
+ describe '.tag' do
179
+ it 'creates a tag' do
180
+ Shell.should_receive(:exec).with('git tag 1.0.0.RELEASE', true)
163
181
 
164
- Git.tag '1.0.0.RELEASE'
182
+ Git.tag '1.0.0.RELEASE'
183
+ end
165
184
  end
166
185
  end
167
186
  end
metadata CHANGED
@@ -1,20 +1,18 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: github-pivotal-flow
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.5
5
- prerelease:
4
+ version: 0.0.6
6
5
  platform: ruby
7
6
  authors:
8
7
  - Donald Piret
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2014-01-20 00:00:00.000000000 Z
11
+ date: 2014-01-21 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: highline
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
17
  - - ~>
20
18
  - !ruby/object:Gem::Version
@@ -22,7 +20,6 @@ dependencies:
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
24
  - - ~>
28
25
  - !ruby/object:Gem::Version
@@ -30,7 +27,6 @@ dependencies:
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: pivotal-tracker
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
31
  - - ~>
36
32
  - !ruby/object:Gem::Version
@@ -38,7 +34,6 @@ dependencies:
38
34
  type: :runtime
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
38
  - - ~>
44
39
  - !ruby/object:Gem::Version
@@ -46,7 +41,6 @@ dependencies:
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: bundler
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
45
  - - ~>
52
46
  - !ruby/object:Gem::Version
@@ -54,7 +48,6 @@ dependencies:
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
52
  - - ~>
60
53
  - !ruby/object:Gem::Version
@@ -62,7 +55,6 @@ dependencies:
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rake
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
59
  - - ~>
68
60
  - !ruby/object:Gem::Version
@@ -70,7 +62,6 @@ dependencies:
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
66
  - - ~>
76
67
  - !ruby/object:Gem::Version
@@ -78,7 +69,6 @@ dependencies:
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: redcarpet
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
73
  - - ~>
84
74
  - !ruby/object:Gem::Version
@@ -86,7 +76,6 @@ dependencies:
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
80
  - - ~>
92
81
  - !ruby/object:Gem::Version
@@ -94,7 +83,6 @@ dependencies:
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: rspec
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
87
  - - ~>
100
88
  - !ruby/object:Gem::Version
@@ -102,7 +90,6 @@ dependencies:
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
94
  - - ~>
108
95
  - !ruby/object:Gem::Version
@@ -110,7 +97,6 @@ dependencies:
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: simplecov
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
101
  - - ~>
116
102
  - !ruby/object:Gem::Version
@@ -118,7 +104,6 @@ dependencies:
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
108
  - - ~>
124
109
  - !ruby/object:Gem::Version
@@ -126,7 +111,6 @@ dependencies:
126
111
  - !ruby/object:Gem::Dependency
127
112
  name: yard
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
115
  - - ~>
132
116
  - !ruby/object:Gem::Version
@@ -134,7 +118,6 @@ dependencies:
134
118
  type: :development
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
122
  - - ~>
140
123
  - !ruby/object:Gem::Version
@@ -150,20 +133,20 @@ extra_rdoc_files: []
150
133
  files:
151
134
  - LICENSE
152
135
  - README.md
136
+ - bin/git-finish
137
+ - bin/git-start
153
138
  - lib/core_ext/object/blank.rb
139
+ - lib/github_pivotal_flow.rb
154
140
  - lib/github_pivotal_flow/command.rb
155
141
  - lib/github_pivotal_flow/configuration.rb
156
142
  - lib/github_pivotal_flow/finish.rb
157
143
  - lib/github_pivotal_flow/git.rb
158
144
  - lib/github_pivotal_flow/github_api.rb
145
+ - lib/github_pivotal_flow/prepare-commit-msg.sh
159
146
  - lib/github_pivotal_flow/project.rb
160
147
  - lib/github_pivotal_flow/shell.rb
161
148
  - lib/github_pivotal_flow/start.rb
162
149
  - lib/github_pivotal_flow/story.rb
163
- - lib/github_pivotal_flow.rb
164
- - lib/github_pivotal_flow/prepare-commit-msg.sh
165
- - bin/git-finish
166
- - bin/git-start
167
150
  - spec/github_pivotal_flow/configuration_spec.rb
168
151
  - spec/github_pivotal_flow/finish_spec.rb
169
152
  - spec/github_pivotal_flow/git_spec.rb
@@ -173,27 +156,26 @@ files:
173
156
  homepage: https://github.com/roomorama/github-pivotal-flow
174
157
  licenses:
175
158
  - MIT
159
+ metadata: {}
176
160
  post_install_message:
177
161
  rdoc_options: []
178
162
  require_paths:
179
163
  - lib
180
164
  required_ruby_version: !ruby/object:Gem::Requirement
181
- none: false
182
165
  requirements:
183
- - - ! '>='
166
+ - - '>='
184
167
  - !ruby/object:Gem::Version
185
168
  version: 1.8.7
186
169
  required_rubygems_version: !ruby/object:Gem::Requirement
187
- none: false
188
170
  requirements:
189
- - - ! '>='
171
+ - - '>='
190
172
  - !ruby/object:Gem::Version
191
173
  version: '0'
192
174
  requirements: []
193
175
  rubyforge_project:
194
- rubygems_version: 1.8.23
176
+ rubygems_version: 2.2.1
195
177
  signing_key:
196
- specification_version: 3
178
+ specification_version: 4
197
179
  summary: Git commands for integration with Pivotal Tracker and Github pull requests
198
180
  test_files:
199
181
  - spec/github_pivotal_flow/configuration_spec.rb