capita_git 0.1.2 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- data/lib/capita_git/cli.rb +9 -0
- data/lib/capita_git/man/gitc +9 -2
- data/lib/capita_git/man/gitc-backport +25 -0
- data/lib/capita_git/man/gitc-backport.txt +24 -0
- data/lib/capita_git/man/gitc-check +29 -2
- data/lib/capita_git/man/gitc-check.txt +34 -2
- data/lib/capita_git/man/gitc-close +41 -0
- data/lib/capita_git/man/gitc-close.txt +38 -0
- data/lib/capita_git/man/gitc-create +39 -0
- data/lib/capita_git/man/gitc-create.txt +36 -0
- data/lib/capita_git/man/gitc-update +38 -0
- data/lib/capita_git/man/gitc-update.txt +39 -0
- data/lib/capita_git/man/gitc.txt +8 -3
- data/lib/capita_git/repository.rb +11 -1
- data/lib/capita_git/version.rb +1 -1
- data/man/gitc-backport.ronn +17 -0
- data/man/gitc-check.ronn +23 -2
- data/man/gitc-close.ronn +25 -0
- data/man/gitc-create.ronn +27 -0
- data/man/gitc-update.ronn +26 -0
- data/man/gitc.ronn +5 -1
- metadata +15 -3
data/lib/capita_git/cli.rb
CHANGED
@@ -127,6 +127,15 @@ module CapitaGit
|
|
127
127
|
repo.close_local_branch(feature_branch)
|
128
128
|
end
|
129
129
|
|
130
|
+
desc "backport", "Merges changes from a fixbranch into master"
|
131
|
+
def backport(fix_branch=nil)
|
132
|
+
repo = CapitaGit::Repository.open(Dir.pwd)
|
133
|
+
fix_branch = fix_branch.nil? ? repo.current_branch : fix_branch
|
134
|
+
|
135
|
+
log :confirm, "--> Backporting changes from '#{fix_branch}' into 'master'"
|
136
|
+
repo.merge_fixbranch(fix_branch)
|
137
|
+
end
|
138
|
+
|
130
139
|
desc "runner", "Generates a Gemfile into the current working directory"
|
131
140
|
|
132
141
|
def runner(command)
|
data/lib/capita_git/man/gitc
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "GITC" "5" "
|
4
|
+
.TH "GITC" "5" "February 2011" "GITC 0.1.3" "GITC Manual"
|
5
5
|
.
|
6
6
|
.SH "NAME"
|
7
7
|
\fBgitc\fR \- git helper for CAPITA Unternehmensberatung GmbH
|
@@ -25,6 +25,9 @@
|
|
25
25
|
\fBgitc\fR close [branch]
|
26
26
|
.
|
27
27
|
.br
|
28
|
+
\fBgitc\fR backport [branch]
|
29
|
+
.
|
30
|
+
.br
|
28
31
|
.
|
29
32
|
.SH "DESCRIPTION"
|
30
33
|
\fBgitc\fR is a git automation tool used by CAPITA Unternehmensberatung GmbH\.
|
@@ -63,9 +66,13 @@ creates a feature branch
|
|
63
66
|
.
|
64
67
|
.TP
|
65
68
|
\fIupdate\fR
|
66
|
-
updates the feature branch\'s source branch and
|
69
|
+
updates the feature branch\'s source branch and rebases the feature branch
|
67
70
|
.
|
68
71
|
.TP
|
69
72
|
\fIclose\fR
|
70
73
|
closes a feature branch by updating and merging into the source branch
|
74
|
+
.
|
75
|
+
.TP
|
76
|
+
\fIbackport\fR
|
77
|
+
merges changes from a fix branch into master
|
71
78
|
|
@@ -0,0 +1,25 @@
|
|
1
|
+
.\" generated with Ronn/v0.7.3
|
2
|
+
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
|
+
.
|
4
|
+
.TH "GITC\-BACKPORT" "1" "February 2011" "GITC 0.1.3" "GITC Manual"
|
5
|
+
.
|
6
|
+
.SH "NAME"
|
7
|
+
\fBgitc\-backport\fR \- Ports changes from a fix branch into master
|
8
|
+
.
|
9
|
+
.SH "SYNOPSIS"
|
10
|
+
\fBgitc\fR backport
|
11
|
+
.
|
12
|
+
.br
|
13
|
+
.
|
14
|
+
.SH "DESCRIPTION"
|
15
|
+
\fBgitc backport\fR merges changes of the currently checked out fix branch back into master\.
|
16
|
+
.
|
17
|
+
.SH "EXAMPLES"
|
18
|
+
.
|
19
|
+
.TP
|
20
|
+
\'gitc backport\'
|
21
|
+
called out of the fix branch \'2\.0\-fix\' would result in:
|
22
|
+
.
|
23
|
+
.br
|
24
|
+
(git checkout master && git merge \-m \'Backporting changes of fix branch \'2\.0\-fix\' into master\' 2\.0\-fix)
|
25
|
+
|
@@ -0,0 +1,24 @@
|
|
1
|
+
GITC-BACKPORT(1) GITC Manual GITC-BACKPORT(1)
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
NAME
|
6
|
+
gitc-backport - Ports changes from a fix branch into master
|
7
|
+
|
8
|
+
SYNOPSIS
|
9
|
+
gitc backport
|
10
|
+
|
11
|
+
DESCRIPTION
|
12
|
+
gitc backport merges changes of the currently checked out fix branch
|
13
|
+
back into master.
|
14
|
+
|
15
|
+
EXAMPLES
|
16
|
+
'gitc backport'
|
17
|
+
called out of the fix branch '2.0-fix' would result in:
|
18
|
+
(git checkout master && git merge -m 'Backporting changes of fix
|
19
|
+
branch '2.0-fix' into master' 2.0-fix)
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
|
24
|
+
GITC 0.1.3 February 2011 GITC-BACKPORT(1)
|
@@ -1,5 +1,32 @@
|
|
1
1
|
.\" generated with Ronn/v0.7.3
|
2
2
|
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
3
|
.
|
4
|
-
.TH "GITC\-CHECK" "" "
|
5
|
-
|
4
|
+
.TH "GITC\-CHECK" "1" "February 2011" "GITC 0.1.3" "GITC Manual"
|
5
|
+
.
|
6
|
+
.SH "NAME"
|
7
|
+
\fBgitc\-check\fR \- Check for releases and create branches
|
8
|
+
.
|
9
|
+
.SH "SYNOPSIS"
|
10
|
+
\fBgitc\fR check
|
11
|
+
.
|
12
|
+
.br
|
13
|
+
.
|
14
|
+
.SH "DESCRIPTION"
|
15
|
+
\fBgitc check\fR does everything neccessary to start working with gitc\'s other features\.
|
16
|
+
.
|
17
|
+
.P
|
18
|
+
After displaying basic information about the current git configuration, gitc queries the remote (origin) repository to figure out the latest major and minor release tags\. The tags \fBhave\fR to be of the format
|
19
|
+
.
|
20
|
+
.IP "\(bu" 4
|
21
|
+
\'1\.X\' as a major release tag
|
22
|
+
.
|
23
|
+
.IP "\(bu" 4
|
24
|
+
\'1\.X\.Y\' as a minor release tag
|
25
|
+
.
|
26
|
+
.IP "" 0
|
27
|
+
.
|
28
|
+
.P
|
29
|
+
gitc then checks for the presence of local and remote fix\-branches for the latest major release number\. Both local and remote fix\-branches are created and linked, based on a checkout of the latest major release tag\. If a fix\-branch already exists on the remote repository, only a tracking local branch will be created\.
|
30
|
+
.
|
31
|
+
.P
|
32
|
+
For example, running gitc check on a repository with tags \'1\.0\', \'1\.1\' and \'1\.1\.1\' will result in the creation of local and remote branch \'1\.1\-fix\'\.
|
@@ -1,5 +1,37 @@
|
|
1
|
-
GITC-CHECK() GITC Manual
|
1
|
+
GITC-CHECK(1) GITC Manual GITC-CHECK(1)
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
|
5
|
+
NAME
|
6
|
+
gitc-check - Check for releases and create branches
|
7
|
+
|
8
|
+
SYNOPSIS
|
9
|
+
gitc check
|
10
|
+
|
11
|
+
DESCRIPTION
|
12
|
+
gitc check does everything neccessary to start working with gitc's
|
13
|
+
other features.
|
14
|
+
|
15
|
+
After displaying basic information about the current git configuration,
|
16
|
+
gitc queries the remote (origin) repository to figure out the latest
|
17
|
+
major and minor release tags. The tags have to be of the format
|
18
|
+
|
19
|
+
o '1.X' as a major release tag
|
20
|
+
|
21
|
+
o '1.X.Y' as a minor release tag
|
22
|
+
|
23
|
+
|
24
|
+
|
25
|
+
gitc then checks for the presence of local and remote fix-branches for
|
26
|
+
the latest major release number. Both local and remote fix-branches are
|
27
|
+
created and linked, based on a checkout of the latest major release
|
28
|
+
tag. If a fix-branch already exists on the remote repository, only a
|
29
|
+
tracking local branch will be created.
|
30
|
+
|
31
|
+
For example, running gitc check on a repository with tags '1.0', '1.1'
|
32
|
+
and '1.1.1' will result in the creation of local and remote branch
|
33
|
+
'1.1-fix'.
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
GITC 0.1.3 February 2011 GITC-CHECK(1)
|
@@ -0,0 +1,41 @@
|
|
1
|
+
.\" generated with Ronn/v0.7.3
|
2
|
+
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
|
+
.
|
4
|
+
.TH "GITC\-CLOSE" "1" "February 2011" "GITC 0.1.3" "GITC Manual"
|
5
|
+
.
|
6
|
+
.SH "NAME"
|
7
|
+
\fBgitc\-close\fR \- Closes a feature branch
|
8
|
+
.
|
9
|
+
.SH "SYNOPSIS"
|
10
|
+
\fBgitc\fR close
|
11
|
+
.
|
12
|
+
.br
|
13
|
+
.
|
14
|
+
.SH "DESCRIPTION"
|
15
|
+
\fBgitc close\fR merges the feature into the source branch\.
|
16
|
+
.
|
17
|
+
.P
|
18
|
+
After performing a \'gitc update\', and bailing out if the update process fails, the feature branche\'s source branch is checked out, the feature branch is merged and finally deleted\.
|
19
|
+
.
|
20
|
+
.SH "EXAMPLES"
|
21
|
+
.
|
22
|
+
.TP
|
23
|
+
\'gitc close\'
|
24
|
+
called out of the feature branch \'jd_master_my\-feature\' would result in:
|
25
|
+
.
|
26
|
+
.br
|
27
|
+
(git checkout master && git pull && git checkout jd_master_my\-feature && git rebase master)
|
28
|
+
.
|
29
|
+
.br
|
30
|
+
(git checkout master && git merge jd_master_my\-feature && git branch \-d jd_master_my\-feature)
|
31
|
+
.
|
32
|
+
.TP
|
33
|
+
\'gitc update\'
|
34
|
+
called out of the feature branch \'jd_2\.0\-fix_my\-feature\' would result in:
|
35
|
+
.
|
36
|
+
.br
|
37
|
+
(git checkout 2\.0\-fix && git pull && git checkout jd_2\.0\-fix_my\-feature && git rebase 2\.0\-fix)
|
38
|
+
.
|
39
|
+
.br
|
40
|
+
(git checkout 2\.0\-fix && git merge jd_2\.0\-fix_my\-feature && git branch \-d jd_2\.0\-fix_my\-feature)
|
41
|
+
|
@@ -0,0 +1,38 @@
|
|
1
|
+
GITC-CLOSE(1) GITC Manual GITC-CLOSE(1)
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
NAME
|
6
|
+
gitc-close - Closes a feature branch
|
7
|
+
|
8
|
+
SYNOPSIS
|
9
|
+
gitc close
|
10
|
+
|
11
|
+
DESCRIPTION
|
12
|
+
gitc close merges the feature into the source branch.
|
13
|
+
|
14
|
+
After performing a 'gitc update', and bailing out if the update process
|
15
|
+
fails, the feature branche's source branch is checked out, the feature
|
16
|
+
branch is merged and finally deleted.
|
17
|
+
|
18
|
+
EXAMPLES
|
19
|
+
'gitc close'
|
20
|
+
called out of the feature branch 'jd_master_my-feature' would
|
21
|
+
result in:
|
22
|
+
(git checkout master && git pull && git checkout jd_mas-
|
23
|
+
ter_my-feature && git rebase master)
|
24
|
+
(git checkout master && git merge jd_master_my-feature && git
|
25
|
+
branch -d jd_master_my-feature)
|
26
|
+
|
27
|
+
'gitc update'
|
28
|
+
called out of the feature branch 'jd_2.0-fix_my-feature' would
|
29
|
+
result in:
|
30
|
+
(git checkout 2.0-fix && git pull && git checkout
|
31
|
+
jd_2.0-fix_my-feature && git rebase 2.0-fix)
|
32
|
+
(git checkout 2.0-fix && git merge jd_2.0-fix_my-feature && git
|
33
|
+
branch -d jd_2.0-fix_my-feature)
|
34
|
+
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
GITC 0.1.3 February 2011 GITC-CLOSE(1)
|
@@ -0,0 +1,39 @@
|
|
1
|
+
.\" generated with Ronn/v0.7.3
|
2
|
+
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
|
+
.
|
4
|
+
.TH "GITC\-CREATE" "1" "February 2011" "GITC 0.1.3" "GITC Manual"
|
5
|
+
.
|
6
|
+
.SH "NAME"
|
7
|
+
\fBgitc\-create\fR \- Creates a feature branch
|
8
|
+
.
|
9
|
+
.SH "SYNOPSIS"
|
10
|
+
\fBgitc\fR create \fIname\fR [source_branch]
|
11
|
+
.
|
12
|
+
.br
|
13
|
+
.
|
14
|
+
.SH "DESCRIPTION"
|
15
|
+
\fBgitc create\fR checks out a new local feature branch for the given name\.
|
16
|
+
.
|
17
|
+
.P
|
18
|
+
The resulting feature branch derives from the source_branch, which defaults to the branch gitc is called from, and is named and prefixed with the user\'s initials accordingly\.
|
19
|
+
.
|
20
|
+
.P
|
21
|
+
Feature branches can\'t be created out of existing feature branches!
|
22
|
+
.
|
23
|
+
.SH "EXAMPLES"
|
24
|
+
(git \-\-config user\.name = "John Doe")
|
25
|
+
.
|
26
|
+
.TP
|
27
|
+
\'gitc create my\-feature\'
|
28
|
+
called out of the master branch would result in a branch named \'jd_master_my\-feature\'
|
29
|
+
.
|
30
|
+
.br
|
31
|
+
(git checkout \-b jd_master_my\-feature master)
|
32
|
+
.
|
33
|
+
.TP
|
34
|
+
\'gitc create my\-feature\'
|
35
|
+
called out of the fix\-branch \'2\.0\-fix\' would result in a branch named \'jd_2\.0\-fix_my\-feature\'
|
36
|
+
.
|
37
|
+
.br
|
38
|
+
(git checkout \-b jd_2\.0\-fix_my\-feature 2\.0\-fix)
|
39
|
+
|
@@ -0,0 +1,36 @@
|
|
1
|
+
GITC-CREATE(1) GITC Manual GITC-CREATE(1)
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
NAME
|
6
|
+
gitc-create - Creates a feature branch
|
7
|
+
|
8
|
+
SYNOPSIS
|
9
|
+
gitc create name [source_branch]
|
10
|
+
|
11
|
+
DESCRIPTION
|
12
|
+
gitc create checks out a new local feature branch for the given name.
|
13
|
+
|
14
|
+
The resulting feature branch derives from the source_branch, which
|
15
|
+
defaults to the branch gitc is called from, and is named and prefixed
|
16
|
+
with the user's initials accordingly.
|
17
|
+
|
18
|
+
Feature branches can't be created out of existing feature branches!
|
19
|
+
|
20
|
+
EXAMPLES
|
21
|
+
(git --config user.name = "John Doe")
|
22
|
+
|
23
|
+
'gitc create my-feature'
|
24
|
+
called out of the master branch would result in a branch named
|
25
|
+
'jd_master_my-feature'
|
26
|
+
(git checkout -b jd_master_my-feature master)
|
27
|
+
|
28
|
+
'gitc create my-feature'
|
29
|
+
called out of the fix-branch '2.0-fix' would result in a branch
|
30
|
+
named 'jd_2.0-fix_my-feature'
|
31
|
+
(git checkout -b jd_2.0-fix_my-feature 2.0-fix)
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
|
36
|
+
GITC 0.1.3 February 2011 GITC-CREATE(1)
|
@@ -0,0 +1,38 @@
|
|
1
|
+
.\" generated with Ronn/v0.7.3
|
2
|
+
.\" http://github.com/rtomayko/ronn/tree/0.7.3
|
3
|
+
.
|
4
|
+
.TH "GITC\-UPDATE" "1" "February 2011" "GITC 0.1.3" "GITC Manual"
|
5
|
+
.
|
6
|
+
.SH "NAME"
|
7
|
+
\fBgitc\-update\fR \- Update a feature branch
|
8
|
+
.
|
9
|
+
.SH "SYNOPSIS"
|
10
|
+
\fBgitc\fR update
|
11
|
+
.
|
12
|
+
.br
|
13
|
+
.
|
14
|
+
.SH "DESCRIPTION"
|
15
|
+
\fBgitc update\fR updates the currently checked out feature branch\.
|
16
|
+
.
|
17
|
+
.P
|
18
|
+
Based on the current feature branch\'s name, the determined source branch is checked out and updated via git pull and the feature branch gets rebased with any new changeset from the source branch\. In case of an unsuccessful rebase, the user needs to proceed as normal (e\.g\. resolving conflicts, issuing \'git add \.\' and \'git rebase \-\-continue\')\.
|
19
|
+
.
|
20
|
+
.P
|
21
|
+
Gitc will fail if the source branch doesn\'t exist or is a feature branch itself!
|
22
|
+
.
|
23
|
+
.SH "EXAMPLES"
|
24
|
+
.
|
25
|
+
.TP
|
26
|
+
\'gitc update\'
|
27
|
+
called out of the feature branch \'jd_master_my\-feature\' would result in updating \'master\' and doing a rebase
|
28
|
+
.
|
29
|
+
.br
|
30
|
+
(git checkout master && git pull && git checkout jd_master_my\-feature && git rebase master)
|
31
|
+
.
|
32
|
+
.TP
|
33
|
+
\'gitc update\'
|
34
|
+
called out of the feature branch \'jd_2\.0\-fix_my\-feature\' would result in updating \'2\.0\-fix\' and doing a rebase
|
35
|
+
.
|
36
|
+
.br
|
37
|
+
(git checkout 2\.0\-fix && git pull && git checkout jd_2\.0\-fix_my\-feature && git rebase 2\.0\-fix)
|
38
|
+
|
@@ -0,0 +1,39 @@
|
|
1
|
+
GITC-UPDATE(1) GITC Manual GITC-UPDATE(1)
|
2
|
+
|
3
|
+
|
4
|
+
|
5
|
+
NAME
|
6
|
+
gitc-update - Update a feature branch
|
7
|
+
|
8
|
+
SYNOPSIS
|
9
|
+
gitc update
|
10
|
+
|
11
|
+
DESCRIPTION
|
12
|
+
gitc update updates the currently checked out feature branch.
|
13
|
+
|
14
|
+
Based on the current feature branch's name, the determined source
|
15
|
+
branch is checked out and updated via git pull and the feature branch
|
16
|
+
gets rebased with any new changeset from the source branch. In case of
|
17
|
+
an unsuccessful rebase, the user needs to proceed as normal (e.g.
|
18
|
+
resolving conflicts, issuing 'git add .' and 'git rebase --continue').
|
19
|
+
|
20
|
+
Gitc will fail if the source branch doesn't exist or is a feature
|
21
|
+
branch itself!
|
22
|
+
|
23
|
+
EXAMPLES
|
24
|
+
'gitc update'
|
25
|
+
called out of the feature branch 'jd_master_my-feature' would
|
26
|
+
result in updating 'master' and doing a rebase
|
27
|
+
(git checkout master && git pull && git checkout jd_mas-
|
28
|
+
ter_my-feature && git rebase master)
|
29
|
+
|
30
|
+
'gitc update'
|
31
|
+
called out of the feature branch 'jd_2.0-fix_my-feature' would
|
32
|
+
result in updating '2.0-fix' and doing a rebase
|
33
|
+
(git checkout 2.0-fix && git pull && git checkout
|
34
|
+
jd_2.0-fix_my-feature && git rebase 2.0-fix)
|
35
|
+
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
GITC 0.1.3 February 2011 GITC-UPDATE(1)
|
data/lib/capita_git/man/gitc.txt
CHANGED
@@ -12,6 +12,7 @@ SYNOPSIS
|
|
12
12
|
gitc create [name] [source_branch]
|
13
13
|
gitc update [branch]
|
14
14
|
gitc close [branch]
|
15
|
+
gitc backport [branch]
|
15
16
|
|
16
17
|
DESCRIPTION
|
17
18
|
gitc is a git automation tool used by CAPITA Unternehmensberatung GmbH.
|
@@ -42,12 +43,16 @@ COMMANDS
|
|
42
43
|
|
43
44
|
create creates a feature branch
|
44
45
|
|
45
|
-
update updates
|
46
|
+
update updates the feature branch's source branch and rebases the fea-
|
47
|
+
ture branch
|
46
48
|
|
47
|
-
close closes
|
49
|
+
close closes a feature branch by updating and merging into the source
|
48
50
|
branch
|
49
51
|
|
52
|
+
backport
|
53
|
+
merges changes from a fix branch into master
|
50
54
|
|
51
55
|
|
52
56
|
|
53
|
-
|
57
|
+
|
58
|
+
GITC 0.1.3 February 2011 GITC(5)
|
@@ -81,11 +81,17 @@ module CapitaGit
|
|
81
81
|
def close_local_branch(branch)
|
82
82
|
raise "Source branch '#{branch}' is not a feature branch, can't close!" unless is_local_feature_branch?(branch)
|
83
83
|
rebase_local_branch(branch)
|
84
|
-
|
84
|
+
checkout_local_branch source_branch(branch)
|
85
85
|
system "git merge #{branch}"
|
86
86
|
system "git branch -d #{branch}"
|
87
87
|
end
|
88
88
|
|
89
|
+
def merge_fixbranch(branch)
|
90
|
+
raise "Source branch '#{branch}' is not a fix branch!" unless is_local_fixbranch?(branch)
|
91
|
+
checkout_local_branch 'master'
|
92
|
+
system "git merge -m 'Backporting changes of fix branch \'#{branch}\' into master' #{branch}"
|
93
|
+
end
|
94
|
+
|
89
95
|
def has_local_branch?(name)
|
90
96
|
!@repository.branches.local.detect { |b| b.full =~ /#{name.gsub('/', '\/')}/ }.nil?
|
91
97
|
end
|
@@ -94,6 +100,10 @@ module CapitaGit
|
|
94
100
|
!name.match(/^#{user_shortcut}/).nil?
|
95
101
|
end
|
96
102
|
|
103
|
+
def is_local_fixbranch?(name)
|
104
|
+
local_fixbranch_for_version?(latest_major_release_tag).to_s == name
|
105
|
+
end
|
106
|
+
|
97
107
|
def on_branchable_branch?(branch)
|
98
108
|
branch == 'master' or not is_local_feature_branch?(branch)
|
99
109
|
end
|
data/lib/capita_git/version.rb
CHANGED
@@ -0,0 +1,17 @@
|
|
1
|
+
gitc-backport(1) -- Ports changes from a fix branch into master
|
2
|
+
=======================================================
|
3
|
+
|
4
|
+
## SYNOPSIS
|
5
|
+
|
6
|
+
`gitc` backport<br>
|
7
|
+
|
8
|
+
## DESCRIPTION
|
9
|
+
|
10
|
+
**gitc backport** merges changes of the currently checked out fix branch back into master.
|
11
|
+
|
12
|
+
|
13
|
+
## EXAMPLES
|
14
|
+
|
15
|
+
* 'gitc backport':
|
16
|
+
called out of the fix branch '2.0-fix' would result in:<br>
|
17
|
+
(git checkout master && git merge -m 'Backporting changes of fix branch '2.0-fix' into master' 2.0-fix)
|
data/man/gitc-check.ronn
CHANGED
@@ -1,2 +1,23 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
gitc-check(1) -- Check for releases and create branches
|
2
|
+
=======================================================
|
3
|
+
|
4
|
+
## SYNOPSIS
|
5
|
+
|
6
|
+
`gitc` check<br>
|
7
|
+
|
8
|
+
## DESCRIPTION
|
9
|
+
|
10
|
+
**gitc check** does everything neccessary to start working with gitc's other features.
|
11
|
+
|
12
|
+
After displaying basic information about the current git configuration, gitc queries the remote (origin)
|
13
|
+
repository to figure out the latest major and minor release tags. The tags **have** to be of the format
|
14
|
+
|
15
|
+
* '1.X' as a major release tag
|
16
|
+
* '1.X.Y' as a minor release tag
|
17
|
+
|
18
|
+
gitc then checks for the presence of local and remote fix-branches for the latest major release number. Both
|
19
|
+
local and remote fix-branches are created and linked, based on a checkout of the latest major release tag.
|
20
|
+
If a fix-branch already exists on the remote repository, only a tracking local branch will be created.
|
21
|
+
|
22
|
+
For example, running gitc check on a repository with tags '1.0', '1.1' and '1.1.1' will result in the creation
|
23
|
+
of local and remote branch '1.1-fix'.
|
data/man/gitc-close.ronn
ADDED
@@ -0,0 +1,25 @@
|
|
1
|
+
gitc-close(1) -- Closes a feature branch
|
2
|
+
=======================================================
|
3
|
+
|
4
|
+
## SYNOPSIS
|
5
|
+
|
6
|
+
`gitc` close<br>
|
7
|
+
|
8
|
+
## DESCRIPTION
|
9
|
+
|
10
|
+
**gitc close** merges the feature into the source branch.
|
11
|
+
|
12
|
+
After performing a 'gitc update', and bailing out if the update process fails, the feature branche's source branch
|
13
|
+
is checked out, the feature branch is merged and finally deleted.
|
14
|
+
|
15
|
+
## EXAMPLES
|
16
|
+
|
17
|
+
* 'gitc close':
|
18
|
+
called out of the feature branch 'jd_master_my-feature' would result in:<br>
|
19
|
+
(git checkout master && git pull && git checkout jd_master_my-feature && git rebase master)<br>
|
20
|
+
(git checkout master && git merge jd_master_my-feature && git branch -d jd_master_my-feature)
|
21
|
+
|
22
|
+
* 'gitc update':
|
23
|
+
called out of the feature branch 'jd_2.0-fix_my-feature' would result in:<br>
|
24
|
+
(git checkout 2.0-fix && git pull && git checkout jd_2.0-fix_my-feature && git rebase 2.0-fix)<br>
|
25
|
+
(git checkout 2.0-fix && git merge jd_2.0-fix_my-feature && git branch -d jd_2.0-fix_my-feature)
|
@@ -0,0 +1,27 @@
|
|
1
|
+
gitc-create(1) -- Creates a feature branch
|
2
|
+
=======================================================
|
3
|
+
|
4
|
+
## SYNOPSIS
|
5
|
+
|
6
|
+
`gitc` create <name> [source_branch]<br>
|
7
|
+
|
8
|
+
## DESCRIPTION
|
9
|
+
|
10
|
+
**gitc create** checks out a new local feature branch for the given name.
|
11
|
+
|
12
|
+
The resulting feature branch derives from the source_branch, which defaults to the branch gitc is called from, and
|
13
|
+
is named and prefixed with the user's initials accordingly.
|
14
|
+
|
15
|
+
Feature branches can't be created out of existing feature branches!
|
16
|
+
|
17
|
+
## EXAMPLES
|
18
|
+
|
19
|
+
(git --config user.name = "John Doe")
|
20
|
+
|
21
|
+
* 'gitc create my-feature':
|
22
|
+
called out of the master branch would result in a branch named 'jd_master_my-feature'<br>
|
23
|
+
(git checkout -b jd_master_my-feature master)
|
24
|
+
|
25
|
+
* 'gitc create my-feature':
|
26
|
+
called out of the fix-branch '2.0-fix' would result in a branch named 'jd_2.0-fix_my-feature'<br>
|
27
|
+
(git checkout -b jd_2.0-fix_my-feature 2.0-fix)
|
@@ -0,0 +1,26 @@
|
|
1
|
+
gitc-update(1) -- Update a feature branch
|
2
|
+
=======================================================
|
3
|
+
|
4
|
+
## SYNOPSIS
|
5
|
+
|
6
|
+
`gitc` update<br>
|
7
|
+
|
8
|
+
## DESCRIPTION
|
9
|
+
|
10
|
+
**gitc update** updates the currently checked out feature branch.
|
11
|
+
|
12
|
+
Based on the current feature branch's name, the determined source branch is checked out and updated via git pull and
|
13
|
+
the feature branch gets rebased with any new changeset from the source branch. In case of an unsuccessful rebase, the
|
14
|
+
user needs to proceed as normal (e.g. resolving conflicts, issuing 'git add .' and 'git rebase --continue').
|
15
|
+
|
16
|
+
Gitc will fail if the source branch doesn't exist or is a feature branch itself!
|
17
|
+
|
18
|
+
## EXAMPLES
|
19
|
+
|
20
|
+
* 'gitc update':
|
21
|
+
called out of the feature branch 'jd_master_my-feature' would result in updating 'master' and doing a rebase<br>
|
22
|
+
(git checkout master && git pull && git checkout jd_master_my-feature && git rebase master)
|
23
|
+
|
24
|
+
* 'gitc update':
|
25
|
+
called out of the feature branch 'jd_2.0-fix_my-feature' would result in updating '2.0-fix' and doing a rebase<br>
|
26
|
+
(git checkout 2.0-fix && git pull && git checkout jd_2.0-fix_my-feature && git rebase 2.0-fix)
|
data/man/gitc.ronn
CHANGED
@@ -9,6 +9,7 @@ gitc(5) -- git helper for CAPITA Unternehmensberatung GmbH
|
|
9
9
|
`gitc` create [name] [source_branch]<br>
|
10
10
|
`gitc` update [branch]<br>
|
11
11
|
`gitc` close [branch]<br>
|
12
|
+
`gitc` backport [branch]<br>
|
12
13
|
|
13
14
|
## DESCRIPTION
|
14
15
|
|
@@ -41,7 +42,10 @@ Available commands currently are:
|
|
41
42
|
creates a feature branch
|
42
43
|
|
43
44
|
* <update>:
|
44
|
-
updates the feature branch's source branch and
|
45
|
+
updates the feature branch's source branch and rebases the feature branch
|
45
46
|
|
46
47
|
* <close>:
|
47
48
|
closes a feature branch by updating and merging into the source branch
|
49
|
+
|
50
|
+
* <backport>:
|
51
|
+
merges changes from a fix branch into master
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: capita_git
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 29
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 1
|
9
|
-
-
|
10
|
-
version: 0.1.
|
9
|
+
- 3
|
10
|
+
version: 0.1.3
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- Sebastian Georgi
|
@@ -120,15 +120,27 @@ files:
|
|
120
120
|
- lib/capita_git/repository.rb
|
121
121
|
- lib/capita_git/ui.rb
|
122
122
|
- lib/capita_git/version.rb
|
123
|
+
- man/gitc-backport.ronn
|
123
124
|
- man/gitc-check.ronn
|
125
|
+
- man/gitc-close.ronn
|
126
|
+
- man/gitc-create.ronn
|
127
|
+
- man/gitc-update.ronn
|
124
128
|
- man/gitc.ronn
|
125
129
|
- test/cli_test.rb
|
126
130
|
- test/shoulda_macros.rb
|
127
131
|
- test/test_helper.rb
|
128
132
|
- lib/capita_git/man/gitc
|
129
133
|
- lib/capita_git/man/gitc-check
|
134
|
+
- lib/capita_git/man/gitc-close
|
135
|
+
- lib/capita_git/man/gitc-update
|
136
|
+
- lib/capita_git/man/gitc-create.txt
|
137
|
+
- lib/capita_git/man/gitc-backport.txt
|
130
138
|
- lib/capita_git/man/gitc-check.txt
|
139
|
+
- lib/capita_git/man/gitc-update.txt
|
131
140
|
- lib/capita_git/man/gitc.txt
|
141
|
+
- lib/capita_git/man/gitc-close.txt
|
142
|
+
- lib/capita_git/man/gitc-create
|
143
|
+
- lib/capita_git/man/gitc-backport
|
132
144
|
has_rdoc: true
|
133
145
|
homepage: https://github.com/capita/capita_git
|
134
146
|
licenses: []
|