X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=Documentation%2Fgit-checkout.txt;h=fbdbadc74fbe558285323353b7aa006f3cfd559b;hb=162f41292167a800432fc6bbacfcd9f93a90b0c8;hp=985bb2f8272254f0e52816981171a2df8ea6e83a;hpb=83c137928c77b83a3d5557bcff467cd020424442;p=git.git diff --git a/Documentation/git-checkout.txt b/Documentation/git-checkout.txt index 985bb2f8..fbdbadc7 100644 --- a/Documentation/git-checkout.txt +++ b/Documentation/git-checkout.txt @@ -8,7 +8,7 @@ git-checkout - Checkout and switch to a branch SYNOPSIS -------- [verse] -'git-checkout' [-f] [-b ] [-m] [] +'git-checkout' [-f] [-b [-l]] [-m] [] 'git-checkout' [-m] [] ... DESCRIPTION @@ -35,7 +35,15 @@ OPTIONS Force a re-read of everything. -b:: - Create a new branch and start it at . + Create a new branch named and start it at + . The new branch name must pass all checks defined + by gitlink:git-check-ref-format[1]. Some of these checks + may restrict the characters allowed in a branch name. + +-l:: + Create the new branch's ref log. This activates recording of + all changes to made the branch ref, enabling use of date + based sha1 expressions such as "@{yesterday}". -m:: If you have local modifications to one or more files that @@ -66,19 +74,19 @@ the `Makefile` to two revisions back, deletes hello.c by mistake, and gets it back from the index. + ------------ -$ git checkout master <1> -$ git checkout master~2 Makefile <2> +$ git checkout master <1> +$ git checkout master~2 Makefile <2> $ rm -f hello.c -$ git checkout hello.c <3> - +$ git checkout hello.c <3> +------------ ++ <1> switch branch <2> take out a file out of other commit -<3> or "git checkout -- hello.c", as in the next example. ------------- +<3> restore hello.c from HEAD of current branch + -If you have an unfortunate branch that is named `hello.c`, the -last step above would be confused as an instruction to switch to -that branch. You should instead write: +If you have an unfortunate branch that is named `hello.c`, this +step would be confused as an instruction to switch to that branch. +You should instead write: + ------------ $ git checkout -- hello.c