path: root/Documentation
diff options
authorAlex Riesen <>2008-08-21 17:23:20 (GMT)
committerJunio C Hamano <>2008-08-23 00:18:26 (GMT)
commit9188ed8962ed47c0f41c24eb1317aa07037da545 (patch)
treeab528a64f51ccc6ac1ca920a39b82725e6d7c317 /Documentation
parenta19a424010970a076a51afb4b378c9edcd908ff9 (diff)
Extend "checkout --track" DWIM to support more cases
The code handles additionally "refs/remotes/<something>/name", "remotes/<something>/name", and "refs/<namespace>/name". Signed-off-by: Alex Riesen <> Signed-off-by: Junio C Hamano <>
Diffstat (limited to 'Documentation')
1 files changed, 10 insertions, 3 deletions
diff --git a/Documentation/git-checkout.txt b/Documentation/git-checkout.txt
index 43d4502..be54a02 100644
--- a/Documentation/git-checkout.txt
+++ b/Documentation/git-checkout.txt
@@ -64,9 +64,16 @@ OPTIONS
given. Set it to `always` if you want this behavior when the
start-point is either a local or remote branch.
-If no '-b' option was given, a name will be made up for you, by stripping
-the part up to the first slash of the tracked branch. For example, if you
-called 'git checkout --track origin/next', the branch name will be 'next'.
+If no '-b' option was given, the name of the new branch will be
+derived from the remote branch, by attempting to guess the name
+of the branch on remote system. If "remotes/" or "refs/remotes/"
+are prefixed, it is stripped away, and then the part up to the
+next slash (which would be the nickname of the remote) is removed.
+This would tell us to use "hack" as the local branch when branching
+off of "origin/hack" (or "remotes/origin/hack", or even
+"refs/remotes/origin/hack"). If the given name has no slash, or the above
+guessing results in an empty name, the guessing is aborted. You can
+exlicitly give a name with '-b' in such a case.
Ignore the branch.autosetupmerge configuration variable.