gitcycle 0.1.14 → 0.1.15

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.
Files changed (4) hide show
  1. data/README.md +32 -22
  2. data/gitcycle.gemspec +1 -1
  3. data/lib/gitcycle.rb +16 -2
  4. metadata +4 -4
data/README.md CHANGED
@@ -19,18 +19,6 @@ Type `gitc` + your ticket URL to create a new branch:
19
19
 
20
20
  gitc https://xxx.lighthouseapp.com/projects/0000/tickets/0000-my-ticket
21
21
 
22
- Reset Branch
23
- ------------
24
-
25
- If you associate the wrong branch with a ticket, use `git reset` to fix it.
26
-
27
- Checkout the branch that you will eventually merge your feature into:
28
-
29
- git checkout master
30
-
31
- Type `gitc reset` + your ticket URL to reset the branch:
32
-
33
- gitc reset https://xxx.lighthouseapp.com/projects/0000/tickets/0000-my-ticket
34
22
 
35
23
  Pull Changes from Upstream
36
24
  --------------------------
@@ -62,9 +50,7 @@ Managers will periodically check for "Pending Review" issues on GitHub.
62
50
 
63
51
  Once reviewed, they will mark the issue as reviewed:
64
52
 
65
- gitc reviewed 0000
66
-
67
- Where 0000 is the Github issue number.
53
+ gitc reviewed [GITHUB ISSUE #] [...]
68
54
 
69
55
  Quality Assurance
70
56
  -----------------
@@ -73,7 +59,7 @@ QA engineers will periodically check for "Pending QA" issues on Github.
73
59
 
74
60
  To create a new QA branch:
75
61
 
76
- gitc qa 0000 0001
62
+ gitc qa [GITHUB ISSUE #] [...]
77
63
 
78
64
  This will create a new QA branch containing the commits from the related Github issue numbers.
79
65
 
@@ -84,9 +70,7 @@ QA Fail
84
70
 
85
71
  If a feature does not pass QA:
86
72
 
87
- gitc qa fail 0000
88
-
89
- Where 0000 is the Github issue number.
73
+ gitc qa fail [GITHUB ISSUE #] [...]
90
74
 
91
75
  To fail all issues:
92
76
 
@@ -99,9 +83,7 @@ QA Pass
99
83
 
100
84
  If a feature passes QA:
101
85
 
102
- gitc qa pass 0000
103
-
104
- Where 0000 is the Github issue number.
86
+ gitc qa pass [GITHUB ISSUE #] [...]
105
87
 
106
88
  To pass all issues:
107
89
 
@@ -109,6 +91,27 @@ To pass all issues:
109
91
 
110
92
  This will add a "pass" label to the issue and will complete the pull request by merging the feature branch into the target branch.
111
93
 
94
+ More
95
+ ----
96
+
97
+ ### Reset Branch
98
+
99
+ If you associate the wrong branch with a ticket, use `gitc reset` to fix it.
100
+
101
+ Checkout the branch that you will eventually merge your feature into:
102
+
103
+ git checkout master
104
+
105
+ Type `gitc reset` + your ticket URL to reset the branch:
106
+
107
+ gitc reset https://xxx.lighthouseapp.com/projects/0000/tickets/0000-my-ticket
108
+
109
+ ### Track Upstream Branch
110
+
111
+ If you are working in a fork, it is easy to track upstream branches:
112
+
113
+ gitc track [BRANCH] [...]
114
+
112
115
  Todo
113
116
  ----
114
117
 
@@ -116,3 +119,10 @@ Todo
116
119
  * Add comment on lighthouse with issue URL
117
120
  * Label issues with ticket milestone?
118
121
  * gitc qa pass, should not set ticket to pending-approval if its already resolved
122
+ * gitc pull before gitc ready
123
+ * Note you can use gitc with a string
124
+ * Tag issue with Lighthouse tags (if == backend or frontend)
125
+ * On pass or fail, send email to Github email
126
+ * If gitc reset happens on branch with Github issue, close the existing issue
127
+ * Change QA branch name to qa_login_branch
128
+ * LH states aren't being updated to pending-* states, the active state update works, reported by Jimmy
data/gitcycle.gemspec CHANGED
@@ -6,7 +6,7 @@ $:.unshift lib unless $:.include?(lib)
6
6
 
7
7
  Gem::Specification.new do |s|
8
8
  s.name = "gitcycle"
9
- s.version = '0.1.14'
9
+ s.version = '0.1.15'
10
10
  s.platform = Gem::Platform::RUBY
11
11
  s.authors = [ 'Winton Welsh' ]
12
12
  s.email = [ 'mail@wintoni.us' ]
data/lib/gitcycle.rb CHANGED
@@ -274,6 +274,8 @@ class Gitcycle
274
274
 
275
275
  puts "Opening issue: #{branch['issue_url']}\n".green
276
276
  Launchy.open(branch['issue_url'])
277
+ else
278
+ puts "You have not pushed any commits to '#{branch['name']}'.\n".red
277
279
  end
278
280
  else
279
281
  puts "\nLabeling issues as 'Pending Review'.\n".green
@@ -336,6 +338,18 @@ class Gitcycle
336
338
  end
337
339
  end
338
340
 
341
+ def track(*branches)
342
+ puts "\nRetrieving repo information from gitcycle.\n".green
343
+ repo = get('repo')
344
+
345
+ branches.each do |branch|
346
+ add_remote_and_fetch(:owner => repo['owner'], :repo => repo['name'])
347
+
348
+ puts "Creating branch '#{branch}' from '#{repo['owner']}/#{branch}'.\n".green
349
+ run("git branch --no-track #{branch} #{repo['owner']}/#{branch}")
350
+ end
351
+ end
352
+
339
353
  private
340
354
 
341
355
  def add_remote_and_fetch(options={})
@@ -376,7 +390,7 @@ class Gitcycle
376
390
  else
377
391
  puts "Tracking branch '#{remote}/#{name}'.\n".green
378
392
  run("git fetch -q #{remote}")
379
- run("git checkout --track -b #{name} #{remote}/#{name}")
393
+ run("git checkout -b #{name} #{remote}/#{name}")
380
394
  end
381
395
 
382
396
  run("git pull #{remote} #{name}")
@@ -402,7 +416,7 @@ class Gitcycle
402
416
  add_remote_and_fetch(options)
403
417
 
404
418
  puts "Checking out remote branch '#{target}' from '#{owner}/#{repo}/#{branch}'.\n".green
405
- run("git checkout --track -b #{target} #{owner}/#{branch}")
419
+ run("git checkout -b #{target} #{owner}/#{branch}")
406
420
 
407
421
  puts "Pulling 'origin/#{target}'.\n".green
408
422
  run("git pull origin #{target}")
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gitcycle
3
3
  version: !ruby/object:Gem::Version
4
- hash: 7
4
+ hash: 5
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
8
  - 1
9
- - 14
10
- version: 0.1.14
9
+ - 15
10
+ version: 0.1.15
11
11
  platform: ruby
12
12
  authors:
13
13
  - Winton Welsh
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-01-25 00:00:00 -08:00
18
+ date: 2012-01-27 00:00:00 -08:00
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency