githole 1.2.0 → 1.3.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 0d9734bc5107eee2dffcde9f00018fc92cde95e2
4
- data.tar.gz: 4a31352513c1b2a97f5ebe579d22144282bf6f41
3
+ metadata.gz: a4220029e0085bbb52488e09c867c56a8dd76df3
4
+ data.tar.gz: ce110439df62ef66ca010bdc0d62ac9bd0e8a555
5
5
  SHA512:
6
- metadata.gz: 81f3f2517718cb7a34fae7d014ece6e99420b2d8effd62981607ca761526c0b92a29c345959e78932aad0cef0c5feced68d1ad7ea39a8bc221087737a53f2782
7
- data.tar.gz: 82af75c31c83368057adc9d349b02e66aa490bf90612d80aa97c231e4b2050c1082aff8d5ff49c7d0ce5596f0985d051502ed7366f1657de3e8983456f8ae683
6
+ metadata.gz: 69b7acad7b219d42b4d40abc1539b495af1c5413f7950aaf5229eefcdfce102603aabd44d96a62b0639619a05786cf17cc5e305b084331e385a5db310a6670b3
7
+ data.tar.gz: 31202a814481262714e8a1c04942170ec7b5dd28c1a93557223de327b7aa83e6eabcaa0f943041c0d106f6583bfc5974e4d9371df9aecd9be81d1ca08a697bc6
data/README.md CHANGED
@@ -1,8 +1,8 @@
1
1
  Githole
2
2
  ================
3
3
 
4
- Githole is a command line script that serves as a wrapper for several git
5
- commands, which serve my git workflow.
4
+ Githole is a wrapper for a specific versioning workflow using [Git](http://git-
5
+ scm.com/).
6
6
 
7
7
  The Workflow
8
8
  ----------------
@@ -72,7 +72,7 @@ want as your second argument.
72
72
  Here's an example:
73
73
 
74
74
  ```text
75
- $ githole add 1.4.1
75
+ $ githole add v1.4.1
76
76
  ```
77
77
 
78
78
  ### Add
@@ -83,14 +83,15 @@ version branches and figure out if it needs to pull or not.
83
83
  Let's say you're going to work on v1.4.1. You would set it up by running:
84
84
 
85
85
  ```text
86
- $ githole add 1.4.1
86
+ $ githole add v1.4.1
87
87
  ```
88
88
 
89
89
  This creates a *version branch* -- `v1.4.1` -- and a *local feature branch* --
90
90
  `local-v1.4.1`.
91
91
 
92
92
  > **This workflow is specifically designed so you do not work in feature
93
- > branches. You only merge into them.**
93
+ > branches. You only merge into them after you have rebased them to your loacl
94
+ > branch.**
94
95
 
95
96
  This command runs the following commands:
96
97
 
@@ -113,7 +114,7 @@ While you can run this command at any time, I recommend at least doing it when
113
114
  you begin a dev session.
114
115
 
115
116
  ```text
116
- $ githole update 1.4.1
117
+ $ githole update v1.4.1
117
118
  ```
118
119
 
119
120
  This runs the following commands
@@ -121,9 +122,10 @@ This runs the following commands
121
122
  ```text
122
123
  $ git checkout master
123
124
  $ git pull origin master
125
+ $ git checkout local-v1.4.1
126
+ $ git rebase master
124
127
  $ git checkout v1.4.1
125
128
  $ git pull origin v1.4.1
126
- $ git rebase master
127
129
  $ git checkout local-v1.4.1
128
130
  $ git rebase v1.4.1
129
131
  ```
@@ -140,7 +142,7 @@ Push first runs the update action, then pushes up to origin. Therefore, *you
140
142
  don't have to run `update` before you run `push`.*
141
143
 
142
144
  ```text
143
- $ githole push 1.4.1
145
+ $ githole push v1.4.1
144
146
  ```
145
147
 
146
148
  In addition to the update commands, we run:
@@ -159,7 +161,7 @@ delete remote branches through your app's UI, just so you can use it as another
159
161
  way to check yourself.
160
162
 
161
163
  ```text
162
- $ githole remove 1.4.1
164
+ $ githole remove v1.4.1
163
165
  ```
164
166
 
165
167
  The remove action runs these commands:
@@ -179,7 +181,7 @@ This is a separate action because it has to happen **after the merge/pull
179
181
  request is accepted.**
180
182
 
181
183
  ```text
182
- $ githole tag 1.4.1
184
+ $ githole tag v1.4.1
183
185
  ```
184
186
 
185
187
  The tag action runs these commands:
@@ -191,6 +193,30 @@ $ git tag -a v1.4.1 -m "v1.4.1"
191
193
  $ git push origin --tags
192
194
  ```
193
195
 
196
+ ### Release
197
+
198
+ The `release` branch is used to maintain the latest stable (as `master` *could*
199
+ be used for testing scenarios you can't test on the version branch).
200
+
201
+ > `release` is to be used **in replacement to** `tag`, as it will also run
202
+ > `tag`.
203
+
204
+ The command is:
205
+
206
+ ```text
207
+ $ githole release v1.4.1
208
+ ```
209
+
210
+ In addition to the `tag` commands, this will run:
211
+
212
+ ```text
213
+ $ git checkout [-b] release
214
+ $ git pull origin release
215
+ $ git merge master
216
+ $ git push origin release
217
+ $ git checkout master
218
+ ```
219
+
194
220
  Contributing
195
221
  ----------------
196
222
 
@@ -203,4 +229,8 @@ Contributing
203
229
  Changelog
204
230
  ----------------
205
231
 
232
+ * **v1.2.0**: Remove the auto "v" prefix from the branch and tag names
233
+ * **v1.1.2**: Never rebase onto a branch tracking a remote repository; always
234
+ rebase onto a local-only branch
235
+ * **v1.1.1**: Switch to master before fetching
206
236
  * **v1.1.0**: Add a `tag` action that pulls and tags master, then pushes tag
data/lib/githole/git.rb CHANGED
@@ -6,7 +6,7 @@ module Githole
6
6
  end
7
7
 
8
8
  def respond_to?(cmd)
9
- ['add','update','push','remove', 'tag'].include?(cmd)
9
+ ['add','update','push','remove', 'tag','release'].include?(cmd)
10
10
  end
11
11
 
12
12
  def add
@@ -54,6 +54,15 @@ module Githole
54
54
  git_push "--tags"
55
55
  end
56
56
 
57
+ def release
58
+ tag
59
+ create "release"
60
+ pull "release"
61
+ merge master
62
+ git_push "release"
63
+ checkout master
64
+ end
65
+
57
66
  private
58
67
 
59
68
  def git(cmd)
@@ -1,3 +1,3 @@
1
1
  module Githole
2
- VERSION = "1.2.0"
2
+ VERSION = "1.3.0"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: githole
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.0
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Sean C Davis
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-11 00:00:00.000000000 Z
11
+ date: 2015-04-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler