git_reflow 0.9.4 → 0.9.8
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.github/workflows/multi-ruby-tests.yml +2 -11
- data/.rubocop.yml +7 -0
- data/.ruby-version +1 -1
- data/CHANGELOG.md +105 -12
- data/Gemfile.lock +82 -42
- data/git_reflow.gemspec +5 -5
- data/lib/git_reflow/git_helpers.rb +10 -4
- data/lib/git_reflow/git_server/git_hub/pull_request.rb +12 -2
- data/lib/git_reflow/version.rb +1 -1
- data/lib/git_reflow/workflow.rb +10 -3
- data/spec/lib/git_reflow/git_helpers_spec.rb +92 -72
- data/spec/lib/git_reflow_spec.rb +0 -1
- data/spec/spec_helper.rb +1 -1
- metadata +12 -12
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 72b11a5519ef9749a971a39fe8f5db8184b690a20fd6252580ec9e065aa0cc2b
|
4
|
+
data.tar.gz: 22e88f4979e30671592e2c1ef5206cb71ea79aa51e194ed79731d15ffa096522
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 82605482502f22b09d7915aeba4222f7db16b10e42b7c8a9446f1770f6a1d22e663096832b806b4205be27d3045f2cb1c67e8194cca534dbdd9a5701e60fae03
|
7
|
+
data.tar.gz: f6f32d501815ffd8d66e0402db7c8433fafd5494e4da1af4c3106d4efd86a84b0c4909c54d9b9c00a0f5842d1f3bb0bd847dd9dca7066168f6c3d44b6e5dfd04
|
@@ -12,22 +12,13 @@ jobs:
|
|
12
12
|
fail-fast: true
|
13
13
|
matrix:
|
14
14
|
os: [ ubuntu-latest, macos-latest ]
|
15
|
-
ruby: ['2.
|
15
|
+
ruby: ['2.6.6', '2.7.2', '3.0.0 ']
|
16
16
|
runs-on: ${{ matrix.os }}
|
17
17
|
steps:
|
18
18
|
- uses: actions/checkout@v2
|
19
19
|
- uses: ruby/setup-ruby@v1
|
20
20
|
with:
|
21
21
|
ruby-version: ${{ matrix.ruby }}
|
22
|
-
|
23
|
-
with:
|
24
|
-
path: vendor/bundle
|
25
|
-
key: bundle-use-ruby-${{ matrix.os }}-${{ matrix.ruby }}-${{ hashFiles('**/Gemfile.lock') }}
|
26
|
-
restore-keys: |
|
27
|
-
bundle-use-ruby-${{ matrix.os }}-${{ matrix.ruby }}-
|
28
|
-
- name: bundle install
|
29
|
-
run: |
|
30
|
-
bundle config path vendor/bundle
|
31
|
-
bundle install --jobs 4 --retry 3
|
22
|
+
bundler-cache: true
|
32
23
|
- name: Run Tests for Ruby ${{ matrix.ruby }} on ${{ matrix.os }}
|
33
24
|
run: bundle exec rake
|
data/.rubocop.yml
CHANGED
data/.ruby-version
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
3.0.0
|
data/CHANGELOG.md
CHANGED
@@ -1,6 +1,57 @@
|
|
1
|
-
#
|
1
|
+
# Changelog
|
2
2
|
|
3
|
-
## [
|
3
|
+
## [v0.9.8](https://github.com/reenhanced/gitreflow/tree/v0.9.8) (2022-02-20)
|
4
|
+
|
5
|
+
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.9.7...HEAD)
|
6
|
+
|
7
|
+
**Bug fixes:**
|
8
|
+
|
9
|
+
- Fixes a bug accidentally introduced when attempting to debug OptionParser issue.
|
10
|
+
|
11
|
+
# Changelog
|
12
|
+
|
13
|
+
## [v0.9.7](https://github.com/reenhanced/gitreflow/tree/v0.9.7) (2022-02-20)
|
14
|
+
|
15
|
+
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.9.6...HEAD)
|
16
|
+
|
17
|
+
**Bug fixes:**
|
18
|
+
|
19
|
+
- Correctly parse command line flag and switch values when no help docs are provided
|
20
|
+
|
21
|
+
## [v0.9.6](https://github.com/reenhanced/gitreflow/tree/v0.9.6) (2021-11-05)
|
22
|
+
|
23
|
+
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.9.5...HEAD)
|
24
|
+
|
25
|
+
**Implemented enhancements:**
|
26
|
+
|
27
|
+
- Use GitHub PR Templates? [\#251](https://github.com/reenhanced/gitreflow/issues/251)
|
28
|
+
|
29
|
+
**Merged pull requests:**
|
30
|
+
|
31
|
+
- Introduce configurable PR and merge commit templates [\#252](https://github.com/reenhanced/gitreflow/pull/252) ([codenamev](https://github.com/codenamev))
|
32
|
+
|
33
|
+
## [v0.9.5](https://github.com/reenhanced/gitreflow/tree/v0.9.5) (2021-03-25)
|
34
|
+
|
35
|
+
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.9.4...v0.9.5)
|
36
|
+
|
37
|
+
**Fixed bugs:**
|
38
|
+
|
39
|
+
- Deprecation warnings with Ruby 2.7.0 [\#239](https://github.com/reenhanced/gitreflow/issues/239)
|
40
|
+
|
41
|
+
**Merged pull requests:**
|
42
|
+
|
43
|
+
- Support for Ruby 3.0 [\#249](https://github.com/reenhanced/gitreflow/pull/249) ([codenamev](https://github.com/codenamev))
|
44
|
+
|
45
|
+
## [v0.9.4](https://github.com/reenhanced/gitreflow/tree/v0.9.4) (2020-11-10)
|
46
|
+
|
47
|
+
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.9.3...v0.9.4)
|
48
|
+
|
49
|
+
**Merged pull requests:**
|
50
|
+
|
51
|
+
- Fix critical issue, and update deps [\#245](https://github.com/reenhanced/gitreflow/pull/245) ([codenamev](https://github.com/codenamev))
|
52
|
+
- Fixed typo [\#244](https://github.com/reenhanced/gitreflow/pull/244) ([hsbt](https://github.com/hsbt))
|
53
|
+
|
54
|
+
## [v0.9.3](https://github.com/reenhanced/gitreflow/tree/v0.9.3) (2020-06-02)
|
4
55
|
|
5
56
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.9.2...v0.9.3)
|
6
57
|
|
@@ -20,6 +71,8 @@
|
|
20
71
|
- Documention for GitReflow::Config [\#238](https://github.com/reenhanced/gitreflow/pull/238) ([PuZZleDucK](https://github.com/PuZZleDucK))
|
21
72
|
- Fixes several issues related to git-reflow setup [\#236](https://github.com/reenhanced/gitreflow/pull/236) ([codenamev](https://github.com/codenamev))
|
22
73
|
|
74
|
+
## [v0.9.2](https://github.com/reenhanced/gitreflow/tree/v0.9.2) (2019-09-10)
|
75
|
+
|
23
76
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.9.1...v0.9.2)
|
24
77
|
|
25
78
|
**Closed issues:**
|
@@ -29,9 +82,9 @@
|
|
29
82
|
**Merged pull requests:**
|
30
83
|
|
31
84
|
- Update dependencies and trap INT signal [\#235](https://github.com/reenhanced/gitreflow/pull/235) ([codenamev](https://github.com/codenamev))
|
32
|
-
- Allow installing gems from within Workflow files with `use_gem` and `use_gemfile` [\#233](https://github.com/reenhanced/gitreflow/pull/233) ([codenamev](https://github.com/codenamev))
|
33
85
|
|
34
86
|
## [v0.9.1](https://github.com/reenhanced/gitreflow/tree/v0.9.1) (2019-04-17)
|
87
|
+
|
35
88
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.9.0...v0.9.1)
|
36
89
|
|
37
90
|
**Closed issues:**
|
@@ -39,6 +92,7 @@
|
|
39
92
|
- Purpose of core `stage` command? [\#232](https://github.com/reenhanced/gitreflow/issues/232)
|
40
93
|
|
41
94
|
## [v0.9.0](https://github.com/reenhanced/gitreflow/tree/v0.9.0) (2018-11-09)
|
95
|
+
|
42
96
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.8.10...v0.9.0)
|
43
97
|
|
44
98
|
**Implemented enhancements:**
|
@@ -68,17 +122,19 @@
|
|
68
122
|
- Allow for custom commit/merge message templates [\#223](https://github.com/reenhanced/gitreflow/pull/223) ([codenamev](https://github.com/codenamev))
|
69
123
|
|
70
124
|
## [v0.8.10](https://github.com/reenhanced/gitreflow/tree/v0.8.10) (2018-04-19)
|
125
|
+
|
71
126
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.8.9...v0.8.10)
|
72
127
|
|
73
128
|
**Merged pull requests:**
|
74
129
|
|
75
130
|
- Updates rubies and gems [\#221](https://github.com/reenhanced/gitreflow/pull/221) ([codenamev](https://github.com/codenamev))
|
76
|
-
- Remove lingering `
|
131
|
+
- Remove lingering `skip_lgtm` options in favor of `force` option [\#218](https://github.com/reenhanced/gitreflow/pull/218) ([codenamev](https://github.com/codenamev))
|
77
132
|
- Remove dead code [\#217](https://github.com/reenhanced/gitreflow/pull/217) ([codenamev](https://github.com/codenamev))
|
78
133
|
- Updates REAME to Markdown [\#216](https://github.com/reenhanced/gitreflow/pull/216) ([codenamev](https://github.com/codenamev))
|
79
134
|
- Updates readme with details on customization [\#214](https://github.com/reenhanced/gitreflow/pull/214) ([codenamev](https://github.com/codenamev))
|
80
135
|
|
81
136
|
## [v0.8.9](https://github.com/reenhanced/gitreflow/tree/v0.8.9) (2017-04-26)
|
137
|
+
|
82
138
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.8.8...v0.8.9)
|
83
139
|
|
84
140
|
**Fixed bugs:**
|
@@ -91,9 +147,11 @@
|
|
91
147
|
- Adds checks for new GH reviews when delivering [\#215](https://github.com/reenhanced/gitreflow/pull/215) ([codenamev](https://github.com/codenamev))
|
92
148
|
|
93
149
|
## [v0.8.8](https://github.com/reenhanced/gitreflow/tree/v0.8.8) (2017-04-24)
|
150
|
+
|
94
151
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.8.7...v0.8.8)
|
95
152
|
|
96
153
|
## [v0.8.7](https://github.com/reenhanced/gitreflow/tree/v0.8.7) (2017-04-21)
|
154
|
+
|
97
155
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.8.4...v0.8.7)
|
98
156
|
|
99
157
|
**Implemented enhancements:**
|
@@ -111,7 +169,7 @@
|
|
111
169
|
**Merged pull requests:**
|
112
170
|
|
113
171
|
- 0.8.7 [\#213](https://github.com/reenhanced/gitreflow/pull/213) ([nhance](https://github.com/nhance))
|
114
|
-
- Updates Github merge request to use new `
|
172
|
+
- Updates Github merge request to use new `merge_method` param [\#211](https://github.com/reenhanced/gitreflow/pull/211) ([codenamev](https://github.com/codenamev))
|
115
173
|
- Adds a logger to log command runs [\#210](https://github.com/reenhanced/gitreflow/pull/210) ([codenamev](https://github.com/codenamev))
|
116
174
|
- All commands that are run through reflow \(except git-config\) are now blocking [\#209](https://github.com/reenhanced/gitreflow/pull/209) ([codenamev](https://github.com/codenamev))
|
117
175
|
- Fix loading of PR template from '.github' directory [\#208](https://github.com/reenhanced/gitreflow/pull/208) ([codenamev](https://github.com/codenamev))
|
@@ -120,6 +178,7 @@
|
|
120
178
|
- \[53\] Allow workflows to be loaded from git config [\#199](https://github.com/reenhanced/gitreflow/pull/199) ([codenamev](https://github.com/codenamev))
|
121
179
|
|
122
180
|
## [v0.8.4](https://github.com/reenhanced/gitreflow/tree/v0.8.4) (2016-08-22)
|
181
|
+
|
123
182
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.8.3...v0.8.4)
|
124
183
|
|
125
184
|
**Closed issues:**
|
@@ -132,9 +191,11 @@
|
|
132
191
|
- \[53\] Create core workflow module to consolidate commands [\#198](https://github.com/reenhanced/gitreflow/pull/198) ([codenamev](https://github.com/codenamev))
|
133
192
|
|
134
193
|
## [v0.8.3](https://github.com/reenhanced/gitreflow/tree/v0.8.3) (2016-08-04)
|
194
|
+
|
135
195
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.8.2...v0.8.3)
|
136
196
|
|
137
197
|
## [v0.8.2](https://github.com/reenhanced/gitreflow/tree/v0.8.2) (2016-08-01)
|
198
|
+
|
138
199
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.8.1...v0.8.2)
|
139
200
|
|
140
201
|
**Fixed bugs:**
|
@@ -143,7 +204,6 @@
|
|
143
204
|
|
144
205
|
**Closed issues:**
|
145
206
|
|
146
|
-
- GitHub authentication issues [\#193](https://github.com/reenhanced/gitreflow/issues/193)
|
147
207
|
- non-master base branch does not work for the deliver command [\#192](https://github.com/reenhanced/gitreflow/issues/192)
|
148
208
|
- git-reflow fork command [\#188](https://github.com/reenhanced/gitreflow/issues/188)
|
149
209
|
- Bitbucket setup not working [\#186](https://github.com/reenhanced/gitreflow/issues/186)
|
@@ -163,6 +223,7 @@
|
|
163
223
|
- Respect GitHub pull request template [\#179](https://github.com/reenhanced/gitreflow/pull/179) ([timraasveld](https://github.com/timraasveld))
|
164
224
|
|
165
225
|
## [v0.8.1](https://github.com/reenhanced/gitreflow/tree/v0.8.1) (2016-05-26)
|
226
|
+
|
166
227
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.8.0...v0.8.1)
|
167
228
|
|
168
229
|
**Closed issues:**
|
@@ -175,6 +236,7 @@
|
|
175
236
|
- Support for non-master branch [\#73](https://github.com/reenhanced/gitreflow/issues/73)
|
176
237
|
|
177
238
|
## [v0.8.0](https://github.com/reenhanced/gitreflow/tree/v0.8.0) (2016-05-26)
|
239
|
+
|
178
240
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.7.5...v0.8.0)
|
179
241
|
|
180
242
|
**Implemented enhancements:**
|
@@ -201,6 +263,7 @@
|
|
201
263
|
- \[issue: 162\] Updating Rspecs: Use "Allow" instead of "Stub" [\#163](https://github.com/reenhanced/gitreflow/pull/163) ([simonzhu24](https://github.com/simonzhu24))
|
202
264
|
|
203
265
|
## [v0.7.5](https://github.com/reenhanced/gitreflow/tree/v0.7.5) (2016-04-14)
|
266
|
+
|
204
267
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.7.4...v0.7.5)
|
205
268
|
|
206
269
|
**Implemented enhancements:**
|
@@ -219,6 +282,7 @@
|
|
219
282
|
- Remove unused gitreflow-common [\#155](https://github.com/reenhanced/gitreflow/pull/155) ([pboling](https://github.com/pboling))
|
220
283
|
|
221
284
|
## [v0.7.4](https://github.com/reenhanced/gitreflow/tree/v0.7.4) (2016-04-08)
|
285
|
+
|
222
286
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.7.3...v0.7.4)
|
223
287
|
|
224
288
|
**Fixed bugs:**
|
@@ -227,6 +291,7 @@
|
|
227
291
|
- SSL Verification is turned off [\#151](https://github.com/reenhanced/gitreflow/issues/151)
|
228
292
|
|
229
293
|
## [v0.7.3](https://github.com/reenhanced/gitreflow/tree/v0.7.3) (2016-03-24)
|
294
|
+
|
230
295
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.7.2...v0.7.3)
|
231
296
|
|
232
297
|
**Fixed bugs:**
|
@@ -240,6 +305,7 @@
|
|
240
305
|
- Store OAuth token somewhere else? [\#54](https://github.com/reenhanced/gitreflow/issues/54)
|
241
306
|
|
242
307
|
## [v0.7.2](https://github.com/reenhanced/gitreflow/tree/v0.7.2) (2016-02-22)
|
308
|
+
|
243
309
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.7.1...v0.7.2)
|
244
310
|
|
245
311
|
**Closed issues:**
|
@@ -249,6 +315,7 @@
|
|
249
315
|
- Deliver to custom branch? [\#144](https://github.com/reenhanced/gitreflow/issues/144)
|
250
316
|
|
251
317
|
## [v0.7.1](https://github.com/reenhanced/gitreflow/tree/v0.7.1) (2015-10-27)
|
318
|
+
|
252
319
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.7.0...v0.7.1)
|
253
320
|
|
254
321
|
**Merged pull requests:**
|
@@ -256,6 +323,7 @@
|
|
256
323
|
- Fix the ask to open in browser dialog on Mac. [\#143](https://github.com/reenhanced/gitreflow/pull/143) ([squaresurf](https://github.com/squaresurf))
|
257
324
|
|
258
325
|
## [v0.7.0](https://github.com/reenhanced/gitreflow/tree/v0.7.0) (2015-10-14)
|
326
|
+
|
259
327
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.6.7...v0.7.0)
|
260
328
|
|
261
329
|
**Fixed bugs:**
|
@@ -267,9 +335,11 @@
|
|
267
335
|
- Command Injection in append\_to\_squashed\_commit\_message. [\#134](https://github.com/reenhanced/gitreflow/issues/134)
|
268
336
|
|
269
337
|
## [v0.6.7](https://github.com/reenhanced/gitreflow/tree/v0.6.7) (2015-09-29)
|
338
|
+
|
270
339
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.6.6...v0.6.7)
|
271
340
|
|
272
341
|
## [v0.6.6](https://github.com/reenhanced/gitreflow/tree/v0.6.6) (2015-09-28)
|
342
|
+
|
273
343
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.6.5...v0.6.6)
|
274
344
|
|
275
345
|
**Merged pull requests:**
|
@@ -277,6 +347,7 @@
|
|
277
347
|
- Fix review message parsing from editor failed [\#133](https://github.com/reenhanced/gitreflow/pull/133) ([francois](https://github.com/francois))
|
278
348
|
|
279
349
|
## [v0.6.5](https://github.com/reenhanced/gitreflow/tree/v0.6.5) (2015-08-31)
|
350
|
+
|
280
351
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.6.4...v0.6.5)
|
281
352
|
|
282
353
|
**Closed issues:**
|
@@ -285,6 +356,7 @@
|
|
285
356
|
- Feature Request: command to cleanly land a contributor's PR [\#128](https://github.com/reenhanced/gitreflow/issues/128)
|
286
357
|
|
287
358
|
## [v0.6.4](https://github.com/reenhanced/gitreflow/tree/v0.6.4) (2015-08-04)
|
359
|
+
|
288
360
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.6.3...v0.6.4)
|
289
361
|
|
290
362
|
**Fixed bugs:**
|
@@ -292,6 +364,7 @@
|
|
292
364
|
- reflow needs an lgtm from myself [\#116](https://github.com/reenhanced/gitreflow/issues/116)
|
293
365
|
|
294
366
|
## [v0.6.3](https://github.com/reenhanced/gitreflow/tree/v0.6.3) (2015-08-03)
|
367
|
+
|
295
368
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.6.2...v0.6.3)
|
296
369
|
|
297
370
|
**Closed issues:**
|
@@ -300,6 +373,7 @@
|
|
300
373
|
- Error: \#\<NameError: wrong constant name \> [\#120](https://github.com/reenhanced/gitreflow/issues/120)
|
301
374
|
|
302
375
|
## [v0.6.2](https://github.com/reenhanced/gitreflow/tree/v0.6.2) (2015-08-03)
|
376
|
+
|
303
377
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.6.1...v0.6.2)
|
304
378
|
|
305
379
|
**Fixed bugs:**
|
@@ -321,6 +395,7 @@
|
|
321
395
|
- Add number attribute to Base:PullRequest [\#110](https://github.com/reenhanced/gitreflow/pull/110) ([tanin47](https://github.com/tanin47))
|
322
396
|
|
323
397
|
## [v0.6.1](https://github.com/reenhanced/gitreflow/tree/v0.6.1) (2015-06-02)
|
398
|
+
|
324
399
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.6.0...v0.6.1)
|
325
400
|
|
326
401
|
**Closed issues:**
|
@@ -328,13 +403,11 @@
|
|
328
403
|
- git reflow setup not working [\#106](https://github.com/reenhanced/gitreflow/issues/106)
|
329
404
|
|
330
405
|
## [v0.6.0](https://github.com/reenhanced/gitreflow/tree/v0.6.0) (2015-05-15)
|
331
|
-
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.5.3...v0.6.0)
|
332
406
|
|
333
|
-
|
334
|
-
|
335
|
-
- new functionality for review [\#99](https://github.com/reenhanced/gitreflow/pull/99) ([meesterdude](https://github.com/meesterdude))
|
407
|
+
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.5.3...v0.6.0)
|
336
408
|
|
337
409
|
## [v0.5.3](https://github.com/reenhanced/gitreflow/tree/v0.5.3) (2015-05-15)
|
410
|
+
|
338
411
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.5.2...v0.5.3)
|
339
412
|
|
340
413
|
**Closed issues:**
|
@@ -348,12 +421,15 @@
|
|
348
421
|
- tmp\_squash\_msh is not removed if we use git reflow in other directories than root. [\#98](https://github.com/reenhanced/gitreflow/pull/98) ([tanin47](https://github.com/tanin47))
|
349
422
|
|
350
423
|
## [v0.5.2](https://github.com/reenhanced/gitreflow/tree/v0.5.2) (2015-04-03)
|
424
|
+
|
351
425
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.5.1...v0.5.2)
|
352
426
|
|
353
427
|
## [v0.5.1](https://github.com/reenhanced/gitreflow/tree/v0.5.1) (2015-03-26)
|
428
|
+
|
354
429
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.5.0...v0.5.1)
|
355
430
|
|
356
431
|
## [v0.5.0](https://github.com/reenhanced/gitreflow/tree/v0.5.0) (2015-03-26)
|
432
|
+
|
357
433
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.4.2...v0.5.0)
|
358
434
|
|
359
435
|
**Fixed bugs:**
|
@@ -365,6 +441,7 @@
|
|
365
441
|
- Changing remote url in \reponame\.git\config to make reflow deliver work [\#75](https://github.com/reenhanced/gitreflow/issues/75)
|
366
442
|
|
367
443
|
## [v0.4.2](https://github.com/reenhanced/gitreflow/tree/v0.4.2) (2015-02-10)
|
444
|
+
|
368
445
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.4.1...v0.4.2)
|
369
446
|
|
370
447
|
**Fixed bugs:**
|
@@ -379,6 +456,7 @@
|
|
379
456
|
- Github Enterprise Compatibility [\#42](https://github.com/reenhanced/gitreflow/issues/42)
|
380
457
|
|
381
458
|
## [v0.4.1](https://github.com/reenhanced/gitreflow/tree/v0.4.1) (2014-10-28)
|
459
|
+
|
382
460
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.4.0...v0.4.1)
|
383
461
|
|
384
462
|
**Closed issues:**
|
@@ -386,6 +464,7 @@
|
|
386
464
|
- License does not have year and name filled in [\#69](https://github.com/reenhanced/gitreflow/issues/69)
|
387
465
|
|
388
466
|
## [v0.4.0](https://github.com/reenhanced/gitreflow/tree/v0.4.0) (2014-10-16)
|
467
|
+
|
389
468
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.3.5...v0.4.0)
|
390
469
|
|
391
470
|
**Merged pull requests:**
|
@@ -394,6 +473,7 @@
|
|
394
473
|
- \[fix\] Show delivery halted message properly [\#63](https://github.com/reenhanced/gitreflow/pull/63) ([shirshendu](https://github.com/shirshendu))
|
395
474
|
|
396
475
|
## [v0.3.5](https://github.com/reenhanced/gitreflow/tree/v0.3.5) (2014-03-05)
|
476
|
+
|
397
477
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.3.4...v0.3.5)
|
398
478
|
|
399
479
|
**Closed issues:**
|
@@ -410,6 +490,7 @@
|
|
410
490
|
- Add note to created oauth token so users can find them on their tokens page [\#55](https://github.com/reenhanced/gitreflow/pull/55) ([marten](https://github.com/marten))
|
411
491
|
|
412
492
|
## [v0.3.4](https://github.com/reenhanced/gitreflow/tree/v0.3.4) (2013-11-01)
|
493
|
+
|
413
494
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.3.3...v0.3.4)
|
414
495
|
|
415
496
|
**Fixed bugs:**
|
@@ -422,6 +503,7 @@
|
|
422
503
|
- Print all git commands [\#43](https://github.com/reenhanced/gitreflow/issues/43)
|
423
504
|
|
424
505
|
## [v0.3.3](https://github.com/reenhanced/gitreflow/tree/v0.3.3) (2013-10-16)
|
506
|
+
|
425
507
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.3.2...v0.3.3)
|
426
508
|
|
427
509
|
**Closed issues:**
|
@@ -430,37 +512,48 @@
|
|
430
512
|
|
431
513
|
**Merged pull requests:**
|
432
514
|
|
433
|
-
- Fix --skip-lgtm option was never passed to the
|
515
|
+
- Fix --skip-lgtm option was never passed to the `#deliver` method [\#45](https://github.com/reenhanced/gitreflow/pull/45) ([francois](https://github.com/francois))
|
434
516
|
|
435
517
|
## [v0.3.2](https://github.com/reenhanced/gitreflow/tree/v0.3.2) (2013-07-25)
|
518
|
+
|
436
519
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.3.1...v0.3.2)
|
437
520
|
|
438
521
|
## [v0.3.1](https://github.com/reenhanced/gitreflow/tree/v0.3.1) (2013-07-12)
|
522
|
+
|
439
523
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.3...v0.3.1)
|
440
524
|
|
441
525
|
## [v0.3](https://github.com/reenhanced/gitreflow/tree/v0.3) (2013-07-12)
|
526
|
+
|
442
527
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.2.5...v0.3)
|
443
528
|
|
444
529
|
## [v0.2.5](https://github.com/reenhanced/gitreflow/tree/v0.2.5) (2013-03-04)
|
530
|
+
|
445
531
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.2.5-with-tests...v0.2.5)
|
446
532
|
|
447
533
|
## [v0.2.5-with-tests](https://github.com/reenhanced/gitreflow/tree/v0.2.5-with-tests) (2013-03-04)
|
534
|
+
|
448
535
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.2.4...v0.2.5-with-tests)
|
449
536
|
|
450
537
|
## [v0.2.4](https://github.com/reenhanced/gitreflow/tree/v0.2.4) (2012-09-21)
|
538
|
+
|
451
539
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.2.2...v0.2.4)
|
452
540
|
|
453
541
|
## [v0.2.2](https://github.com/reenhanced/gitreflow/tree/v0.2.2) (2012-09-17)
|
542
|
+
|
454
543
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.2.1...v0.2.2)
|
455
544
|
|
456
545
|
## [v0.2.1](https://github.com/reenhanced/gitreflow/tree/v0.2.1) (2012-08-30)
|
546
|
+
|
457
547
|
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/v0.2...v0.2.1)
|
458
548
|
|
459
549
|
## [v0.2](https://github.com/reenhanced/gitreflow/tree/v0.2) (2012-08-28)
|
550
|
+
|
551
|
+
[Full Changelog](https://github.com/reenhanced/gitreflow/compare/e84b48641d5ec6f5d87674c9152830e08ffe1b76...v0.2)
|
552
|
+
|
460
553
|
**Merged pull requests:**
|
461
554
|
|
462
555
|
- Adds documentation to reflow [\#13](https://github.com/reenhanced/gitreflow/pull/13) ([nhance](https://github.com/nhance))
|
463
556
|
|
464
557
|
|
465
558
|
|
466
|
-
\* *This
|
559
|
+
\* *This Changelog was automatically generated by [github_changelog_generator](https://github.com/github-changelog-generator/github-changelog-generator)*
|
data/Gemfile.lock
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
git_reflow (0.9.
|
4
|
+
git_reflow (0.9.8)
|
5
5
|
bundler (>= 1.10.0)
|
6
6
|
codenamev_bitbucket_api (= 0.4.1)
|
7
|
-
colorize (>= 0.
|
7
|
+
colorize (>= 0.8.1)
|
8
8
|
github_api (= 0.19)
|
9
9
|
highline
|
10
10
|
httpclient
|
@@ -12,18 +12,36 @@ PATH
|
|
12
12
|
GEM
|
13
13
|
remote: https://rubygems.org/
|
14
14
|
specs:
|
15
|
-
activesupport (6.
|
15
|
+
activesupport (6.1.3)
|
16
16
|
concurrent-ruby (~> 1.0, >= 1.0.2)
|
17
|
-
i18n (>=
|
18
|
-
minitest (
|
19
|
-
tzinfo (~>
|
20
|
-
zeitwerk (~> 2.
|
17
|
+
i18n (>= 1.6, < 2)
|
18
|
+
minitest (>= 5.1)
|
19
|
+
tzinfo (~> 2.0)
|
20
|
+
zeitwerk (~> 2.3)
|
21
21
|
addressable (2.7.0)
|
22
22
|
public_suffix (>= 2.0.2, < 5.0)
|
23
|
-
appraisal (2.
|
23
|
+
appraisal (2.4.0)
|
24
24
|
bundler
|
25
25
|
rake
|
26
26
|
thor (>= 0.14.0)
|
27
|
+
async (1.28.9)
|
28
|
+
console (~> 1.10)
|
29
|
+
nio4r (~> 2.3)
|
30
|
+
timers (~> 4.1)
|
31
|
+
async-http (0.54.1)
|
32
|
+
async (~> 1.25)
|
33
|
+
async-io (~> 1.28)
|
34
|
+
async-pool (~> 0.2)
|
35
|
+
protocol-http (~> 0.21.0)
|
36
|
+
protocol-http1 (~> 0.13.0)
|
37
|
+
protocol-http2 (~> 0.14.0)
|
38
|
+
async-http-faraday (0.9.0)
|
39
|
+
async-http (~> 0.42)
|
40
|
+
faraday
|
41
|
+
async-io (1.30.2)
|
42
|
+
async (~> 1.14)
|
43
|
+
async-pool (0.3.5)
|
44
|
+
async (~> 1.25)
|
27
45
|
byebug (11.1.3)
|
28
46
|
chronic (0.10.2)
|
29
47
|
codenamev_bitbucket_api (0.4.1)
|
@@ -35,26 +53,34 @@ GEM
|
|
35
53
|
simple_oauth (>= 0.3.0)
|
36
54
|
coderay (1.1.3)
|
37
55
|
colorize (0.8.1)
|
38
|
-
concurrent-ruby (1.1.
|
39
|
-
|
56
|
+
concurrent-ruby (1.1.8)
|
57
|
+
console (1.10.1)
|
58
|
+
fiber-local
|
59
|
+
crack (0.4.5)
|
60
|
+
rexml
|
40
61
|
descendants_tracker (0.0.4)
|
41
62
|
thread_safe (~> 0.3, >= 0.3.1)
|
42
63
|
diff-lcs (1.4.4)
|
43
|
-
faraday (1.
|
64
|
+
faraday (1.3.0)
|
65
|
+
faraday-net_http (~> 1.0)
|
44
66
|
multipart-post (>= 1.2, < 3)
|
45
67
|
ruby2_keywords
|
46
68
|
faraday-http-cache (2.2.0)
|
47
69
|
faraday (>= 0.8)
|
48
|
-
|
70
|
+
faraday-net_http (1.0.1)
|
71
|
+
faraday_middleware (1.2.0)
|
49
72
|
faraday (~> 1.0)
|
73
|
+
fiber-local (1.0.0)
|
50
74
|
github_api (0.19.0)
|
51
75
|
addressable (~> 2.4)
|
52
76
|
descendants_tracker (~> 0.0.4)
|
53
77
|
faraday (>= 0.8, < 2)
|
54
78
|
hashie (~> 3.5, >= 3.5.2)
|
55
79
|
oauth2 (~> 1.0)
|
56
|
-
github_changelog_generator (1.
|
80
|
+
github_changelog_generator (1.16.1)
|
57
81
|
activesupport
|
82
|
+
async (>= 1.25.0)
|
83
|
+
async-http-faraday
|
58
84
|
faraday-http-cache
|
59
85
|
multi_json
|
60
86
|
octokit (~> 4.6)
|
@@ -65,81 +91,95 @@ GEM
|
|
65
91
|
hashie (3.6.0)
|
66
92
|
highline (2.0.3)
|
67
93
|
httpclient (2.8.3)
|
68
|
-
i18n (1.8.
|
94
|
+
i18n (1.8.9)
|
69
95
|
concurrent-ruby (~> 1.0)
|
70
|
-
jwt (2.
|
96
|
+
jwt (2.3.0)
|
71
97
|
method_source (1.0.0)
|
72
|
-
mini_portile2 (2.
|
73
|
-
minitest (5.14.
|
98
|
+
mini_portile2 (2.7.1)
|
99
|
+
minitest (5.14.4)
|
74
100
|
multi_json (1.15.0)
|
75
101
|
multi_xml (0.6.0)
|
76
102
|
multipart-post (2.1.1)
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
103
|
+
nio4r (2.5.7)
|
104
|
+
nokogiri (1.13.1)
|
105
|
+
mini_portile2 (~> 2.7.0)
|
106
|
+
racc (~> 1.4)
|
107
|
+
oauth2 (1.4.9)
|
108
|
+
faraday (>= 0.17.3, < 3.0)
|
81
109
|
jwt (>= 1.0, < 3.0)
|
82
110
|
multi_json (~> 1.3)
|
83
111
|
multi_xml (~> 0.5)
|
84
112
|
rack (>= 1.2, < 3)
|
85
|
-
octokit (4.
|
113
|
+
octokit (4.20.0)
|
86
114
|
faraday (>= 0.9)
|
87
115
|
sawyer (~> 0.8.0, >= 0.5.3)
|
116
|
+
protocol-hpack (1.4.2)
|
117
|
+
protocol-http (0.21.0)
|
118
|
+
protocol-http1 (0.13.2)
|
119
|
+
protocol-http (~> 0.19)
|
120
|
+
protocol-http2 (0.14.2)
|
121
|
+
protocol-hpack (~> 1.4)
|
122
|
+
protocol-http (~> 0.18)
|
88
123
|
pry (0.13.1)
|
89
124
|
coderay (~> 1.1)
|
90
125
|
method_source (~> 1.0)
|
91
|
-
pry-byebug (3.9.0)
|
92
|
-
byebug (~> 11.0)
|
93
|
-
pry (~> 0.13.0)
|
94
126
|
public_suffix (4.0.6)
|
127
|
+
racc (1.6.0)
|
95
128
|
rack (2.2.3)
|
96
129
|
rainbow (3.0.0)
|
97
|
-
rake (13.0.
|
98
|
-
rdoc (6.
|
130
|
+
rake (13.0.3)
|
131
|
+
rdoc (6.3.0)
|
99
132
|
retriable (3.1.2)
|
133
|
+
rexml (3.2.4)
|
100
134
|
rspec (3.10.0)
|
101
135
|
rspec-core (~> 3.10.0)
|
102
136
|
rspec-expectations (~> 3.10.0)
|
103
137
|
rspec-mocks (~> 3.10.0)
|
104
|
-
rspec-core (3.10.
|
138
|
+
rspec-core (3.10.1)
|
105
139
|
rspec-support (~> 3.10.0)
|
106
|
-
rspec-expectations (3.10.
|
140
|
+
rspec-expectations (3.10.1)
|
107
141
|
diff-lcs (>= 1.2.0, < 2.0)
|
108
142
|
rspec-support (~> 3.10.0)
|
109
|
-
rspec-mocks (3.10.
|
143
|
+
rspec-mocks (3.10.2)
|
110
144
|
diff-lcs (>= 1.2.0, < 2.0)
|
111
145
|
rspec-support (~> 3.10.0)
|
112
|
-
rspec-support (3.10.
|
113
|
-
ruby2_keywords (0.0.
|
146
|
+
rspec-support (3.10.2)
|
147
|
+
ruby2_keywords (0.0.4)
|
148
|
+
ruby_jard (0.3.1)
|
149
|
+
byebug (>= 9.1, < 12.0)
|
150
|
+
pry (~> 0.13.0)
|
151
|
+
tty-screen (~> 0.8.1)
|
114
152
|
sawyer (0.8.2)
|
115
153
|
addressable (>= 2.3.5)
|
116
154
|
faraday (> 0.8, < 2.0)
|
117
155
|
simple_oauth (0.3.1)
|
118
|
-
thor (1.0
|
156
|
+
thor (1.1.0)
|
119
157
|
thread_safe (0.3.6)
|
120
|
-
|
121
|
-
|
122
|
-
|
158
|
+
timers (4.3.3)
|
159
|
+
tty-screen (0.8.1)
|
160
|
+
tzinfo (2.0.4)
|
161
|
+
concurrent-ruby (~> 1.0)
|
162
|
+
webmock (3.12.1)
|
123
163
|
addressable (>= 2.3.6)
|
124
164
|
crack (>= 0.3.2)
|
125
165
|
hashdiff (>= 0.4.0, < 2.0.0)
|
126
166
|
wwtd (1.4.0)
|
127
|
-
zeitwerk (2.4.
|
167
|
+
zeitwerk (2.4.2)
|
128
168
|
|
129
169
|
PLATFORMS
|
130
170
|
ruby
|
131
171
|
|
132
172
|
DEPENDENCIES
|
133
|
-
appraisal (= 2.
|
173
|
+
appraisal (= 2.4.0)
|
134
174
|
chronic
|
135
175
|
git_reflow!
|
136
176
|
github_changelog_generator
|
137
|
-
|
138
|
-
rake (~> 13.0.1)
|
177
|
+
rake (~> 13.0.3)
|
139
178
|
rdoc
|
140
|
-
rspec (~> 3.
|
179
|
+
rspec (~> 3.10)
|
180
|
+
ruby_jard
|
141
181
|
webmock
|
142
182
|
wwtd (= 1.4)
|
143
183
|
|
144
184
|
BUNDLED WITH
|
145
|
-
2.
|
185
|
+
2.2.4
|
data/git_reflow.gemspec
CHANGED
@@ -19,19 +19,19 @@ Gem::Specification.new do |s|
|
|
19
19
|
s.require_paths = ['lib']
|
20
20
|
s.rdoc_options << '--title' << 'git_reflow' << '-ri'
|
21
21
|
|
22
|
-
s.add_development_dependency('appraisal', '2.
|
22
|
+
s.add_development_dependency('appraisal', '2.4.0')
|
23
23
|
s.add_development_dependency('chronic')
|
24
24
|
s.add_development_dependency('github_changelog_generator')
|
25
|
-
s.add_development_dependency('
|
26
|
-
s.add_development_dependency('rake', '~> 13.0.
|
25
|
+
s.add_development_dependency('ruby_jard')
|
26
|
+
s.add_development_dependency('rake', '~> 13.0.3')
|
27
27
|
s.add_development_dependency('rdoc')
|
28
|
-
s.add_development_dependency('rspec', '~> 3.
|
28
|
+
s.add_development_dependency('rspec', '~> 3.10')
|
29
29
|
s.add_development_dependency('webmock')
|
30
30
|
s.add_development_dependency('wwtd', '1.4')
|
31
31
|
|
32
32
|
s.add_dependency('bundler', '>= 1.10.0')
|
33
33
|
s.add_dependency('codenamev_bitbucket_api', '0.4.1')
|
34
|
-
s.add_dependency('colorize', '>= 0.
|
34
|
+
s.add_dependency('colorize', '>= 0.8.1')
|
35
35
|
s.add_dependency('github_api', '0.19')
|
36
36
|
s.add_dependency('highline')
|
37
37
|
s.add_dependency('httpclient')
|
@@ -47,23 +47,29 @@ module GitReflow
|
|
47
47
|
end
|
48
48
|
|
49
49
|
def pull_request_template
|
50
|
-
|
51
|
-
|
52
|
-
|
53
|
-
|
50
|
+
custom_template = GitReflow::Config.get('templates.pull-request')
|
51
|
+
filenames_to_try = %w[
|
52
|
+
.github/PULL_REQUEST_TEMPLATE.md
|
53
|
+
.github/PULL_REQUEST_TEMPLATE
|
54
|
+
PULL_REQUEST_TEMPLATE.md
|
55
|
+
PULL_REQUEST_TEMPLATE
|
56
|
+
].map do |file|
|
54
57
|
"#{git_root_dir}/#{file}"
|
55
58
|
end
|
59
|
+
filenames_to_try.unshift(custom_template) unless custom_template.empty?
|
56
60
|
|
57
61
|
parse_first_matching_template_file(filenames_to_try)
|
58
62
|
end
|
59
63
|
|
60
64
|
def merge_commit_template
|
65
|
+
custom_template = GitReflow::Config.get('templates.merge-commit')
|
61
66
|
filenames_to_try = %w[.github/MERGE_COMMIT_TEMPLATE.md
|
62
67
|
.github/MERGE_COMMIT_TEMPLATE
|
63
68
|
MERGE_COMMIT_TEMPLATE.md
|
64
69
|
MERGE_COMMIT_TEMPLATE].map do |file|
|
65
70
|
"#{git_root_dir}/#{file}"
|
66
71
|
end
|
72
|
+
filenames_to_try.unshift(custom_template) unless custom_template.empty?
|
67
73
|
|
68
74
|
parse_first_matching_template_file(filenames_to_try)
|
69
75
|
end
|
@@ -24,8 +24,18 @@ module GitReflow
|
|
24
24
|
base: options[:base]))
|
25
25
|
end
|
26
26
|
|
27
|
-
def self.find_open(
|
28
|
-
|
27
|
+
def self.find_open(options = {})
|
28
|
+
options[:to] ||= 'master'
|
29
|
+
options[:from] ||= GitReflow.git_server.class.current_branch
|
30
|
+
|
31
|
+
matching_pull = GitReflow.git_server.connection.pull_requests.all(
|
32
|
+
GitReflow.remote_user,
|
33
|
+
GitReflow.remote_repo_name,
|
34
|
+
base: options[:to],
|
35
|
+
head: "#{GitReflow.remote_user}:#{options[:from]}",
|
36
|
+
state: 'open'
|
37
|
+
).first
|
38
|
+
|
29
39
|
if matching_pull
|
30
40
|
self.new matching_pull
|
31
41
|
end
|
data/lib/git_reflow/version.rb
CHANGED
data/lib/git_reflow/workflow.rb
CHANGED
@@ -157,7 +157,8 @@ module GitReflow
|
|
157
157
|
self.commands[name] = params
|
158
158
|
self.command_docs[name] = params
|
159
159
|
|
160
|
-
|
160
|
+
GitReflow.logger.debug "adding new command '#{name}' with #{defaults.inspect}"
|
161
|
+
self.define_singleton_method(name) do |args = {}|
|
161
162
|
args_with_defaults = {}
|
162
163
|
args.each do |name, value|
|
163
164
|
if "#{value}".length <= 0 && !defaults[name].nil?
|
@@ -310,13 +311,19 @@ module GitReflow
|
|
310
311
|
opts.separator "COMMAND OPTIONS:" if docs[:flags].any? || docs[:switches].any?
|
311
312
|
|
312
313
|
self.commands[name][:flags].each do |flag_name, flag_default|
|
313
|
-
|
314
|
+
# There is a bug in Ruby that will not parse the flag value if no
|
315
|
+
# help text is provided. Fallback to the flag name.
|
316
|
+
flag_help = command_docs[name][:flags][flag_name] || flag_name
|
317
|
+
opts.on("-#{flag_name[0]}", "--#{flag_name} #{flag_name.upcase}", flag_help) do |f|
|
314
318
|
options[kebab_to_underscore(flag_name)] = f || flag_default
|
315
319
|
end
|
316
320
|
end
|
317
321
|
|
318
322
|
self.commands[name][:switches].each do |switch_name, switch_default|
|
319
|
-
|
323
|
+
# There is a bug in Ruby that will not parse the switch value if no
|
324
|
+
# help text is provided. Fallback to the switch name.
|
325
|
+
switch_help = command_docs[name][:switches][switch_name] || switch_name
|
326
|
+
opts.on("-#{switch_name[0]}", "--[no-]#{switch_name}", switch_help) do |s|
|
320
327
|
options[kebab_to_underscore(switch_name)] = s || switch_default
|
321
328
|
end
|
322
329
|
end
|
@@ -1,15 +1,15 @@
|
|
1
|
-
require
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
module Gitacular
|
4
|
+
include GitReflow::GitHelpers
|
5
|
+
extend self
|
6
|
+
end
|
2
7
|
|
3
8
|
describe GitReflow::GitHelpers do
|
4
|
-
let(:origin_url) {
|
9
|
+
let(:origin_url) { "git@github.com:reenhanced.spectacular/this-is-the.shit.git" }
|
5
10
|
|
6
11
|
before do
|
7
|
-
stub_with_fallback(GitReflow::Config, :get).with(
|
8
|
-
|
9
|
-
module Gitacular
|
10
|
-
include GitReflow::GitHelpers
|
11
|
-
extend self
|
12
|
-
end
|
12
|
+
stub_with_fallback(GitReflow::Config, :get).with("remote.origin.url").and_return(origin_url)
|
13
13
|
|
14
14
|
stub_run_for Gitacular
|
15
15
|
end
|
@@ -18,83 +18,86 @@ describe GitReflow::GitHelpers do
|
|
18
18
|
subject { Gitacular.default_editor }
|
19
19
|
|
20
20
|
context "when the environment has EDITOR set" do
|
21
|
-
before { allow(ENV).to receive(:[]).with(
|
22
|
-
specify { expect(
|
21
|
+
before { allow(ENV).to receive(:[]).with("EDITOR").and_return("emacs") }
|
22
|
+
specify { expect(subject).to eql("emacs") }
|
23
23
|
end
|
24
24
|
|
25
25
|
context "when the environment has no EDITOR set" do
|
26
|
-
before { allow(ENV).to receive(:[]).with(
|
27
|
-
specify { expect(
|
26
|
+
before { allow(ENV).to receive(:[]).with("EDITOR").and_return(nil) }
|
27
|
+
specify { expect(subject).to eql("vi") }
|
28
28
|
end
|
29
29
|
end
|
30
30
|
|
31
31
|
describe ".git_root_dir" do
|
32
32
|
subject { Gitacular.git_root_dir }
|
33
|
-
it { expect{ subject }.to have_run_command_silently "git rev-parse --show-toplevel" }
|
33
|
+
it { expect { subject }.to have_run_command_silently "git rev-parse --show-toplevel" }
|
34
34
|
end
|
35
35
|
|
36
|
-
describe
|
36
|
+
describe ".git_editor_command" do
|
37
37
|
subject { Gitacular.git_editor_command }
|
38
|
-
before { ENV[
|
38
|
+
before { ENV["EDITOR"] = "vim" }
|
39
39
|
|
40
|
-
it
|
41
|
-
allow(GitReflow::Config).to receive(:get).with(
|
40
|
+
it "defaults to GitReflow config" do
|
41
|
+
allow(GitReflow::Config).to receive(:get).with("core.editor").and_return "nano"
|
42
42
|
|
43
|
-
expect(subject).to eq
|
43
|
+
expect(subject).to eq "nano"
|
44
44
|
end
|
45
45
|
|
46
|
-
it
|
47
|
-
allow(GitReflow::Config).to receive(:get).with(
|
46
|
+
it "falls back to the environment variable $EDITOR" do
|
47
|
+
allow(GitReflow::Config).to receive(:get).with("core.editor").and_return ""
|
48
48
|
|
49
|
-
expect(subject).to eq
|
49
|
+
expect(subject).to eq "vim"
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
53
53
|
describe ".remote_user" do
|
54
54
|
subject { Gitacular.remote_user }
|
55
55
|
|
56
|
-
it { is_expected.to eq(
|
56
|
+
it { is_expected.to eq("reenhanced.spectacular") }
|
57
57
|
|
58
58
|
context "remote origin url isn't set" do
|
59
|
-
let(:origin_url) {
|
60
|
-
it { is_expected.to eq(
|
59
|
+
let(:origin_url) { "" }
|
60
|
+
it { is_expected.to eq("") }
|
61
61
|
end
|
62
62
|
|
63
63
|
context "remote origin uses HTTP" do
|
64
|
-
let(:origin_url) {
|
65
|
-
it { is_expected.to eq(
|
64
|
+
let(:origin_url) { "https://github.com/reenhanced.spectacular/this-is-the.shit.git" }
|
65
|
+
it { is_expected.to eq("reenhanced.spectacular") }
|
66
66
|
end
|
67
67
|
end
|
68
68
|
|
69
69
|
describe ".remote_repo_name" do
|
70
70
|
subject { Gitacular.remote_repo_name }
|
71
71
|
|
72
|
-
it { is_expected.to eq(
|
72
|
+
it { is_expected.to eq("this-is-the.shit") }
|
73
73
|
|
74
74
|
context "remote origin url isn't set" do
|
75
|
-
let(:origin_url) {
|
76
|
-
it { is_expected.to eq(
|
75
|
+
let(:origin_url) { "" }
|
76
|
+
it { is_expected.to eq("") }
|
77
77
|
end
|
78
78
|
|
79
79
|
context "remote origin uses HTTP" do
|
80
|
-
let(:origin_url) {
|
81
|
-
it { is_expected.to eq(
|
80
|
+
let(:origin_url) { "https://github.com/reenhanced.spectacular/this-is-the.shit.git" }
|
81
|
+
it { is_expected.to eq("this-is-the.shit") }
|
82
82
|
end
|
83
83
|
end
|
84
84
|
|
85
|
-
describe
|
85
|
+
describe ".default_base_branch" do
|
86
86
|
subject { Gitacular.default_base_branch }
|
87
|
-
it { is_expected.to eq(
|
87
|
+
it { is_expected.to eq("master") }
|
88
88
|
|
89
|
-
context
|
90
|
-
before { allow(GitReflow::Config).to receive(:get).with(
|
91
|
-
it { is_expected.to eq(
|
89
|
+
context "when configured" do
|
90
|
+
before { allow(GitReflow::Config).to receive(:get).with("reflow.base-branch").and_return("tuba") }
|
91
|
+
it { is_expected.to eq("tuba") }
|
92
92
|
end
|
93
93
|
end
|
94
94
|
|
95
95
|
describe ".current_branch" do
|
96
96
|
subject { Gitacular.current_branch }
|
97
|
-
it
|
97
|
+
it {
|
98
|
+
expect { subject }
|
99
|
+
.to have_run_command_silently "git branch --no-color | grep '^\* ' | grep -v 'no branch' | sed 's/^* //g'"
|
100
|
+
}
|
98
101
|
end
|
99
102
|
|
100
103
|
describe ".pull_request_template" do
|
@@ -119,36 +122,29 @@ describe GitReflow::GitHelpers do
|
|
119
122
|
|
120
123
|
it { is_expected.to be_nil }
|
121
124
|
end
|
122
|
-
end
|
123
|
-
|
124
|
-
describe ".pull_request_template" do
|
125
|
-
subject { Gitacular.pull_request_template }
|
126
|
-
|
127
|
-
context "template file exists" do
|
128
|
-
let(:root_dir) { "/some_repo" }
|
129
|
-
let(:template_content) { "Template content" }
|
130
125
|
|
126
|
+
context "custom template file configured" do
|
131
127
|
before do
|
132
|
-
allow(
|
133
|
-
allow(File).to receive(:exist?).with("#{root_dir}/.github/PULL_REQUEST_TEMPLATE.md").and_return(true)
|
134
|
-
allow(File).to receive(:read).with("#{root_dir}/.github/PULL_REQUEST_TEMPLATE.md").and_return(template_content)
|
128
|
+
allow(GitReflow::Config).to receive(:get).with("templates.pull-request").and_return "pr_template_file.md"
|
135
129
|
end
|
136
130
|
|
137
|
-
|
131
|
+
context "template file exists" do
|
132
|
+
let(:template_content) { "Template content" }
|
138
133
|
|
139
|
-
|
140
|
-
|
141
|
-
|
142
|
-
|
134
|
+
before do
|
135
|
+
allow(File).to receive(:exist?).with("pr_template_file.md").and_return(true)
|
136
|
+
allow(File).to receive(:read).with("pr_template_file.md").and_return(template_content)
|
137
|
+
end
|
138
|
+
it { is_expected.to eq template_content }
|
143
139
|
end
|
144
|
-
end
|
145
140
|
|
146
|
-
|
147
|
-
|
148
|
-
|
149
|
-
|
141
|
+
context "template file does not exist" do
|
142
|
+
before do
|
143
|
+
allow(File).to receive(:exist?).and_return(false)
|
144
|
+
end
|
150
145
|
|
151
|
-
|
146
|
+
it { is_expected.to be_nil }
|
147
|
+
end
|
152
148
|
end
|
153
149
|
end
|
154
150
|
|
@@ -181,27 +177,51 @@ describe GitReflow::GitHelpers do
|
|
181
177
|
|
182
178
|
it { is_expected.to be_nil }
|
183
179
|
end
|
180
|
+
|
181
|
+
context "custom template file configured" do
|
182
|
+
before do
|
183
|
+
allow(GitReflow::Config).to receive(:get).with("templates.merge-commit").and_return "merge_template_file.md"
|
184
|
+
end
|
185
|
+
|
186
|
+
context "template file exists" do
|
187
|
+
let(:template_content) { "Template content" }
|
188
|
+
|
189
|
+
before do
|
190
|
+
allow(File).to receive(:exist?).with("merge_template_file.md").and_return(true)
|
191
|
+
allow(File).to receive(:read).with("merge_template_file.md").and_return(template_content)
|
192
|
+
end
|
193
|
+
it { is_expected.to eq template_content }
|
194
|
+
end
|
195
|
+
|
196
|
+
context "template file does not exist" do
|
197
|
+
before do
|
198
|
+
allow(File).to receive(:exist?).and_return(false)
|
199
|
+
end
|
200
|
+
|
201
|
+
it { is_expected.to be_nil }
|
202
|
+
end
|
203
|
+
end
|
184
204
|
end
|
185
205
|
|
186
206
|
describe ".get_first_commit_message" do
|
187
207
|
subject { Gitacular.get_first_commit_message }
|
188
|
-
it { expect{ subject }.to have_run_command_silently 'git log --pretty=format:"%s" --no-merges -n 1' }
|
208
|
+
it { expect { subject }.to have_run_command_silently 'git log --pretty=format:"%s" --no-merges -n 1' }
|
189
209
|
end
|
190
210
|
|
191
211
|
describe ".push_current_branch" do
|
192
212
|
subject { Gitacular.push_current_branch }
|
193
|
-
before { allow(Gitacular).to receive(:current_branch).and_return(
|
194
|
-
it { expect{ subject }.to have_run_command "git push origin bingo" }
|
213
|
+
before { allow(Gitacular).to receive(:current_branch).and_return("bingo") }
|
214
|
+
it { expect { subject }.to have_run_command "git push origin bingo" }
|
195
215
|
end
|
196
216
|
|
197
217
|
describe ".fetch_destination(destination_branch)" do
|
198
|
-
subject { Gitacular.fetch_destination(
|
199
|
-
it { expect{ subject }.to have_run_command "git fetch origin new-feature" }
|
218
|
+
subject { Gitacular.fetch_destination("new-feature") }
|
219
|
+
it { expect { subject }.to have_run_command "git fetch origin new-feature" }
|
200
220
|
end
|
201
221
|
|
202
222
|
describe ".update_destination(destination_branch)" do
|
203
|
-
let(:current_branch) {
|
204
|
-
let(:destination_branch) {
|
223
|
+
let(:current_branch) { "bananas" }
|
224
|
+
let(:destination_branch) { "monkey-business" }
|
205
225
|
|
206
226
|
before { allow(Gitacular).to receive(:current_branch).and_return(current_branch) }
|
207
227
|
subject { Gitacular.update_destination(destination_branch) }
|
@@ -217,7 +237,7 @@ describe GitReflow::GitHelpers do
|
|
217
237
|
|
218
238
|
describe ".update_current_branch" do
|
219
239
|
subject { Gitacular.update_current_branch }
|
220
|
-
before { allow(Gitacular).to receive(:current_branch).and_return(
|
240
|
+
before { allow(Gitacular).to receive(:current_branch).and_return("new-feature") }
|
221
241
|
|
222
242
|
it "updates the remote changes and pushes any local changes" do
|
223
243
|
expect { subject }.to have_run_commands_in_order [
|
@@ -228,9 +248,9 @@ describe GitReflow::GitHelpers do
|
|
228
248
|
end
|
229
249
|
|
230
250
|
describe ".update_feature_branch" do
|
231
|
-
options = {base: "base", remote: "remote"}
|
251
|
+
options = { base: "base", remote: "remote" }
|
232
252
|
subject { Gitacular.update_feature_branch(options) }
|
233
|
-
before { allow(Gitacular).to receive(:current_branch).and_return(
|
253
|
+
before { allow(Gitacular).to receive(:current_branch).and_return("feature") }
|
234
254
|
|
235
255
|
it "calls the correct methods" do
|
236
256
|
expect { subject }.to have_run_commands_in_order [
|
@@ -246,14 +266,14 @@ describe GitReflow::GitHelpers do
|
|
246
266
|
describe ".append_to_merge_commit_message(message)" do
|
247
267
|
let(:original_commit_message) { "Oooooo, SQUASH IT" }
|
248
268
|
let(:message) { "do do the voodoo that you do" }
|
249
|
-
let(:root_dir) {
|
269
|
+
let(:root_dir) { "/home/gitreflow" }
|
250
270
|
let(:merge_message_path) { "#{root_dir}/.git/SQUASH_MSG" }
|
251
271
|
let(:tmp_merge_message_path) { "#{root_dir}/.git/tmp_merge_msg" }
|
252
272
|
before { allow(Gitacular).to receive(:git_root_dir).and_return(root_dir) }
|
253
273
|
subject { Gitacular.append_to_merge_commit_message(message) }
|
254
274
|
|
255
275
|
it "appends the message to git's SQUASH_MSG temp file" do
|
256
|
-
tmp_file = double(
|
276
|
+
tmp_file = double("file")
|
257
277
|
allow(File).to receive(:open).with(tmp_merge_message_path, "w").and_yield(tmp_file)
|
258
278
|
allow(File).to receive(:exists?).with(merge_message_path).and_return(true)
|
259
279
|
allow(File).to receive(:foreach).with(merge_message_path).and_yield(original_commit_message)
|
@@ -269,7 +289,7 @@ describe GitReflow::GitHelpers do
|
|
269
289
|
let(:merge_message_path) { "#{root_dir}/.git/MERGE_MSG" }
|
270
290
|
subject { Gitacular.append_to_merge_commit_message(message, merge_method: "merge") }
|
271
291
|
it "appends the message to git's MERGE_MSG temp file if using a direct merge" do
|
272
|
-
tmp_file = double(
|
292
|
+
tmp_file = double("file")
|
273
293
|
allow(File).to receive(:open).with(tmp_merge_message_path, "w").and_yield(tmp_file)
|
274
294
|
allow(File).to receive(:exists?).with(merge_message_path).and_return(true)
|
275
295
|
allow(File).to receive(:foreach).with(merge_message_path).and_yield(original_commit_message)
|
data/spec/lib/git_reflow_spec.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: git_reflow
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.9.
|
4
|
+
version: 0.9.8
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Valentino Stoll
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: exe
|
12
12
|
cert_chain: []
|
13
|
-
date:
|
13
|
+
date: 2022-02-20 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: appraisal
|
@@ -18,14 +18,14 @@ dependencies:
|
|
18
18
|
requirements:
|
19
19
|
- - '='
|
20
20
|
- !ruby/object:Gem::Version
|
21
|
-
version: 2.
|
21
|
+
version: 2.4.0
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
24
|
version_requirements: !ruby/object:Gem::Requirement
|
25
25
|
requirements:
|
26
26
|
- - '='
|
27
27
|
- !ruby/object:Gem::Version
|
28
|
-
version: 2.
|
28
|
+
version: 2.4.0
|
29
29
|
- !ruby/object:Gem::Dependency
|
30
30
|
name: chronic
|
31
31
|
requirement: !ruby/object:Gem::Requirement
|
@@ -55,7 +55,7 @@ dependencies:
|
|
55
55
|
- !ruby/object:Gem::Version
|
56
56
|
version: '0'
|
57
57
|
- !ruby/object:Gem::Dependency
|
58
|
-
name:
|
58
|
+
name: ruby_jard
|
59
59
|
requirement: !ruby/object:Gem::Requirement
|
60
60
|
requirements:
|
61
61
|
- - ">="
|
@@ -74,14 +74,14 @@ dependencies:
|
|
74
74
|
requirements:
|
75
75
|
- - "~>"
|
76
76
|
- !ruby/object:Gem::Version
|
77
|
-
version: 13.0.
|
77
|
+
version: 13.0.3
|
78
78
|
type: :development
|
79
79
|
prerelease: false
|
80
80
|
version_requirements: !ruby/object:Gem::Requirement
|
81
81
|
requirements:
|
82
82
|
- - "~>"
|
83
83
|
- !ruby/object:Gem::Version
|
84
|
-
version: 13.0.
|
84
|
+
version: 13.0.3
|
85
85
|
- !ruby/object:Gem::Dependency
|
86
86
|
name: rdoc
|
87
87
|
requirement: !ruby/object:Gem::Requirement
|
@@ -102,14 +102,14 @@ dependencies:
|
|
102
102
|
requirements:
|
103
103
|
- - "~>"
|
104
104
|
- !ruby/object:Gem::Version
|
105
|
-
version: '3.
|
105
|
+
version: '3.10'
|
106
106
|
type: :development
|
107
107
|
prerelease: false
|
108
108
|
version_requirements: !ruby/object:Gem::Requirement
|
109
109
|
requirements:
|
110
110
|
- - "~>"
|
111
111
|
- !ruby/object:Gem::Version
|
112
|
-
version: '3.
|
112
|
+
version: '3.10'
|
113
113
|
- !ruby/object:Gem::Dependency
|
114
114
|
name: webmock
|
115
115
|
requirement: !ruby/object:Gem::Requirement
|
@@ -172,14 +172,14 @@ dependencies:
|
|
172
172
|
requirements:
|
173
173
|
- - ">="
|
174
174
|
- !ruby/object:Gem::Version
|
175
|
-
version: 0.
|
175
|
+
version: 0.8.1
|
176
176
|
type: :runtime
|
177
177
|
prerelease: false
|
178
178
|
version_requirements: !ruby/object:Gem::Requirement
|
179
179
|
requirements:
|
180
180
|
- - ">="
|
181
181
|
- !ruby/object:Gem::Version
|
182
|
-
version: 0.
|
182
|
+
version: 0.8.1
|
183
183
|
- !ruby/object:Gem::Dependency
|
184
184
|
name: github_api
|
185
185
|
requirement: !ruby/object:Gem::Requirement
|
@@ -335,7 +335,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
335
335
|
- !ruby/object:Gem::Version
|
336
336
|
version: '0'
|
337
337
|
requirements: []
|
338
|
-
rubygems_version: 3.
|
338
|
+
rubygems_version: 3.2.3
|
339
339
|
signing_key:
|
340
340
|
specification_version: 4
|
341
341
|
summary: A better git process
|