gitcycle 0.1.14 → 0.1.15

Sign up to get free protection for your applications and to get access to all the features.
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