symbolic ref: refuse non-ref targets in HEAD
[gitweb.git] / Documentation / git-show-branch.txt
index d3b6e620a8cffcc5cb9a33198370e963cde0dc3f..8277577a6f896f019793382735a8c0f4a6d5e1c3 100644 (file)
@@ -8,9 +8,10 @@ git-show-branch - Show branches and their commits
 SYNOPSIS
 --------
 [verse]
-'git-show-branch' [--all] [--heads] [--tags] [--topo-order] [--current]
+'git show-branch' [--all] [--remotes] [--topo-order] [--current]
                [--more=<n> | --list | --independent | --merge-base]
-               [--no-name | --sha1-name] [<rev> | <glob>]...
+               [--no-name | --sha1-name] [--topics] [<rev> | <glob>]...
+'git show-branch' (-g|--reflog)[=<n>[,<base>]] [--list] [<ref>]
 
 DESCRIPTION
 -----------
@@ -28,8 +29,8 @@ no <rev> nor <glob> is given on the command line.
 OPTIONS
 -------
 <rev>::
-       Arbitrary extended SHA1 expression (see `git-rev-parse`)
-       that typically names a branch HEAD or a tag.
+       Arbitrary extended SHA1 expression (see linkgit:git-rev-parse[1])
+       that typically names a branch head or a tag.
 
 <glob>::
        A glob pattern that matches branch or tag names under
@@ -37,9 +38,13 @@ OPTIONS
        branches under $GIT_DIR/refs/heads/topic, giving
        `topic/*` would show all of them.
 
---all --heads --tags::
-       Show all refs under $GIT_DIR/refs, $GIT_DIR/refs/heads,
-       and $GIT_DIR/refs/tags, respectively.
+-r::
+--remotes::
+       Show the remote-tracking branches.
+
+-a::
+--all::
+       Show both remote-tracking branches and local branches.
 
 --current::
        With this option, the command includes the current
@@ -52,6 +57,11 @@ OPTIONS
         appear in topological order (i.e., descendant commits
         are shown before their parents).
 
+--sparse::
+       By default, the output omits merges that are reachable
+       from only one tip being shown.  This option makes them
+       visible.
+
 --more=<n>::
        Usually the command stops output upon showing the commit
        that is the common ancestor of all the branches.  This
@@ -81,6 +91,22 @@ OPTIONS
        of "master"), name them with the unique prefix of their
        object names.
 
+--topics::
+       Shows only commits that are NOT on the first branch given.
+       This helps track topic branches by hiding any commit that
+       is already in the main line of development.  When given
+       "git show-branch --topics master topic1 topic2", this
+       will show the revisions given by "git rev-list {caret}master
+       topic1 topic2"
+
+--reflog[=<n>[,<base>]] [<ref>]::
+       Shows <n> most recent ref-log entries for the given
+       ref.  If <base> is given, <n> entries going back from
+       that entry.  <base> can be specified as count or date.
+       `-g` can be used as a short-hand for this option.  When
+       no explicit <ref> parameter is given, it defaults to the
+       current branch (or `HEAD` if it is detached).
+
 Note that --more, --list, --independent and --merge-base options
 are mutually exclusive.
 
@@ -141,15 +167,22 @@ it, having the following in the configuration file may help:
 
 ------------
 
-With this,`git show-branch` without extra parameters would show
+With this, `git show-branch` without extra parameters would show
 only the primary branches.  In addition, if you happen to be on
 your topic branch, it is shown as well.
 
+------------
+$ git show-branch --reflog="10,1 hour ago" --list master
+------------
+
+shows 10 reflog entries going back from the tip as of 1 hour ago.
+Without `--list`, the output also shows how these tips are
+topologically related with each other.
 
 
 Author
 ------
-Written by Junio C Hamano <junkio@cox.net>
+Written by Junio C Hamano <gitster@pobox.com>
 
 
 Documentation
@@ -159,4 +192,4 @@ Documentation by Junio C Hamano.
 
 GIT
 ---
-Part of the gitlink:git[7] suite
+Part of the linkgit:git[1] suite