Autogenerated man pages for 58e3fb40f7ca1c28f9105c15166884f80bb22e55
[git.git] / man1 / git-checkout.1
1 .\"Generated by db2man.xsl. Don't modify this, modify the source.
2 .de Sh \" Subsection
3 .br
4 .if t .Sp
5 .ne 5
6 .PP
7 \fB\\$1\fR
8 .PP
9 ..
10 .de Sp \" Vertical space (when we can't use .PP)
11 .if t .sp .5v
12 .if n .sp
13 ..
14 .de Ip \" List item
15 .br
16 .ie \\n(.$>=3 .ne \\$3
17 .el .ne 3
18 .IP "\\$1" \\$2
19 ..
20 .TH "GIT-CHECKOUT" 1 "" "" ""
21 .SH NAME
22 git-checkout \- Checkout and switch to a branch.
23 .SH "SYNOPSIS"
24
25
26 git\-checkout [\-f] [\-b <new_branch>] [<branch>] [<paths>...]
27
28 .SH "DESCRIPTION"
29
30
31 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>\&.
32
33
34 When <paths> are given, this command does not switch branches\&. It updates the named paths in the working tree from the index file (i\&.e\&. it runs git\-checkout\-index \-f \-u)\&. In this case, \-f and \-b options are meaningless and giving either of them results in an error\&. <branch> argument can be used to specify a specific tree\-ish to update the index for the given paths before updating the working tree\&.
35
36 .SH "OPTIONS"
37
38 .TP
39 \-f
40 Force an re\-read of everything\&.
41
42 .TP
43 \-b
44 Create a new branch and start it at <branch>\&.
45
46 .TP
47 <new_branch>
48 Name for the new branch\&.
49
50 .TP
51 <branch>
52 Branch to checkout; may be any object ID that resolves to a commit\&. Defaults to HEAD\&.
53
54 .SH "EXAMPLE"
55
56
57 The following sequence checks out the master branch, reverts the Makefile to two revisions back, deletes hello\&.c by mistake, and gets it back from the index\&.
58
59 .IP
60 $ git checkout master 
61 $ git checkout master~2 Makefile 
62 $ rm \-f hello\&.c
63 $ git checkout hello\&.c 
64
65  switch branch
66  take out a file out of other commit
67  or "git checkout \-\- hello\&.c", as in the next example\&.
68
69 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:
70
71 .IP
72 $ git checkout \-\- hello\&.c
73 .SH "AUTHOR"
74
75
76 Written by Linus Torvalds <torvalds@osdl\&.org>
77
78 .SH "DOCUMENTATION"
79
80
81 Documentation by Junio C Hamano and the git\-list <git@vger\&.kernel\&.org>\&.
82
83 .SH "GIT"
84
85
86 Part of the \fBgit\fR(7) suite
87