You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: git-branch-status-subtree/README.md
+65-17Lines changed: 65 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,28 +1,66 @@
1
-
# git-branch-status
2
-
A BASH script that prints out pretty git branch sync status reports
1
+
# git-branch-status - print pretty git branch sync status reports
2
+
3
+
By default, the `git-branch-status` command shows the divergence relationship between branches for which the upstream differs from it's local counterpart.
4
+
5
+
A number of command-line switches exist, selecting various reports that compare any or all local or remote branches.
6
+
3
7
4
8
![git-branch-status screenshot][scrot]
5
9
10
+
11
+
#### Notes regarding the screenshot above:
12
+
13
+
* This is showing the exhaustive '--all' report. Other reports are constrained (see 'USAGE' below).
14
+
* The "local <-> upstream" section is itemizing all local branches. In this instance:
15
+
* The local branch 'deleteme' is not tracking any remote branch.
16
+
* The local branch 'kd35a' is tracking remote branch 'kd35a/master'.
17
+
* The local branch 'knovoselic' is tracking remote branch 'knovoselic/master'.
18
+
* The local branch 'master' is tracking remote branch 'origin/master'.
19
+
* The "local <-> kd35a" section is itemizing all branches on the 'kd35a' remote. In this instance:
20
+
* The local branch 'master' is 2 commits behind and 24 commits ahead of the remote branch 'kd35a/master'.
21
+
* The "local <-> knovoselic" section is itemizing all branches on the 'knovoselic' remote. In this instance:
22
+
* The local branch 'master' is 4 commits behind and 24 commits ahead of the remote branch 'knovoselic/master'.
23
+
* The "local <-> origin" section is itemizing all branches on the 'origin' remote. In this instance:
24
+
* The remote branch 'origin/delete-me' is not checked-out locally.
25
+
* The remote branch 'origin/master' is tracked by the local branch 'master'.
26
+
* The asterisks to the left of the local 'master' branch names indicate the current working branch.
27
+
* The blue branch names indicate a tracking relationship between a local and it's upstream branch.
28
+
* The "local <-> upstream" section relates tracking branches while remote-specific sections relate identically named branches. This distinction determines the semantics of the green "... synchronized" messages.
29
+
* In the "local <-> upstream" section, this indicates that all local branches which are tracking an upstream are synchronized with their respective upstream counterparts.
30
+
* In remote-specific sections, this indicates that all local branches which have the same name as some branch on this remote are synchronized with that remote branch.
31
+
* In single branch reports, this indicates that the local branch is tracking an upstream branch and is synchronized with it's upstream counterpart.
32
+
* In arbitrary branch comparison reports, this indicates that the two compared branches are synchronized with each other.
0 commit comments