doc/checkout: split checkout and branch creation in synopsis
authorJeff King <peff@peff.net>
Mon, 13 Apr 2009 11:19:33 +0000 (07:19 -0400)
committerJunio C Hamano <gitster@pobox.com>
Mon, 13 Apr 2009 16:06:34 +0000 (09:06 -0700)
These can really be thought of as two different modes, since
the "<branch>" parameter is treated differently in the two
(in one it is the branch to be checked out, but in the other
it is really a start-point for branch creation).

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/git-checkout.txt
index 22ad10d9522c221a87c7177db7196ad95c6f9430..4a1fb530961f589573916c0dfc2c3080da162d9c 100644 (file)
@@ -8,23 +8,22 @@ git-checkout - Checkout a branch or paths to the working tree
 SYNOPSIS
 --------
 [verse]
 SYNOPSIS
 --------
 [verse]
-'git checkout' [-q] [-f] [-m] [-b <new_branch>] [<branch>]
+'git checkout' [-q] [-f] [-m] [<branch>]
+'git checkout' [-q] [-f] [-m] [-b <new_branch>] [<start_point>]
 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <paths>...
 
 DESCRIPTION
 -----------
 
 When <paths> are not given, this command switches branches by
 'git checkout' [-f|--ours|--theirs|-m|--conflict=<style>] [<tree-ish>] [--] <paths>...
 
 DESCRIPTION
 -----------
 
 When <paths> are not given, this command switches branches by
-updating the index and working tree to reflect the specified
-branch, <branch>, and updating HEAD to be <branch> or, if
-specified, <new_branch>.  Using -b will cause <new_branch> to
-be created as if linkgit:git-branch[1] were called; in this case you can
-use the --track or --no-track options, which will be passed to `git
-branch`.
+updating the index, working tree, and HEAD to reflect the specified
+branch.
 
 
-As a convenience, --track will default to creating a branch whose
-name is constructed from the specified branch name by stripping
-the first namespace level.
+If `-b` is given, a new branch is created and checked out, as if
+linkgit:git-branch[1] were called; in this case you can
+use the --track or --no-track options, which will be passed to `git
+branch`.  As a convenience, --track without `-b` implies branch
+creation; see the description of --track below.
 
 When <paths> are given, this command does *not* switch
 branches.  It updates the named paths in the working tree from
 
 When <paths> are given, this command does *not* switch
 branches.  It updates the named paths in the working tree from
@@ -63,7 +62,7 @@ entries; instead, unmerged entries are ignored.
 
 -b::
        Create a new branch named <new_branch> and start it at
 
 -b::
        Create a new branch named <new_branch> and start it at
-       <branch>; see linkgit:git-branch[1] for details.
+       <start_point>; see linkgit:git-branch[1] for details.
 
 -t::
 --track::
 
 -t::
 --track::
@@ -114,13 +113,6 @@ the conflicted merge in the specified paths.
        "merge" (default) and "diff3" (in addition to what is shown by
        "merge" style, shows the original contents).
 
        "merge" (default) and "diff3" (in addition to what is shown by
        "merge" style, shows the original contents).
 
-<new_branch>::
-       Name for the new branch.
-
-<tree-ish>::
-       Tree to checkout from (when paths are given). If not specified,
-       the index will be used.
-
 <branch>::
        Branch to checkout (when no paths are given); may be any object
        ID that resolves to a commit.  Defaults to HEAD.
 <branch>::
        Branch to checkout (when no paths are given); may be any object
        ID that resolves to a commit.  Defaults to HEAD.
@@ -132,6 +124,18 @@ As a special case, the `"@\{-N\}"` syntax for the N-th last branch
 checks out the branch (instead of detaching).  You may also specify
 `-` which is synonymous with `"@\{-1\}"`.
 
 checks out the branch (instead of detaching).  You may also specify
 `-` which is synonymous with `"@\{-1\}"`.
 
+<new_branch>::
+       Name for the new branch.
+
+<start_point>::
+       The name of a commit at which to start the new branch; see
+       linkgit:git-branch[1] for details. Defaults to HEAD.
+
+<tree-ish>::
+       Tree to checkout from (when paths are given). If not specified,
+       the index will be used.
+
+
 
 Detached HEAD
 -------------
 
 Detached HEAD
 -------------