1 .\"Generated by db2man.xsl. Don't modify this, modify the source.
10 .de Sp \" Vertical space (when we can't use .PP)
16 .ie \\n(.$>=3 .ne \\$3
20 .TH "GIT-CHECKOUT-INDEX" 1 "" "" ""
22 git-checkout-index \- Copy files from the index to the working directory
26 \fIgit\-checkout\-index\fR [\-u] [\-q] [\-a] [\-f] [\-n] [\-\-prefix=<string>]
35 Will copy all files listed from the index to the working directory (not overwriting existing files)\&.
41 update stat information for the checked out entries in the index file\&.
45 be quiet if files exist or are not in the index
49 forces overwrite of existing files
53 checks out all files in the index\&. Cannot be used together with explicit filenames\&.
57 Don't checkout new files, only refresh files already checked out\&.
61 When creating files, prepend <string> (usually a directory including a trailing /)
65 Instead of checking out unmerged entries, copy out the files from named stage\&. <number> must be between 1 and 3\&.
69 Instead of taking list of paths from the command line, read list of paths from the standard input\&. Paths are separated by LF (i\&.e\&. one path per line) by default\&.
73 Only meaningful with \-\-stdin; paths are separated with NUL character instead of LF\&.
77 Do not interpret any more arguments as options\&.
80 The order of the flags used to matter, but not anymore\&.
83 Just doing git\-checkout\-index does nothing\&. You probably meant git\-checkout\-index \-a\&. And if you want to force it, you want git\-checkout\-index \-f \-a\&.
86 Intuitiveness is not the goal here\&. Repeatability is\&. The reason for the "no arguments means no work" behavior is that from scripts you are supposed to be able to do:
89 $ find \&. \-name '*\&.h' \-print0 | xargs \-0 git\-checkout\-index \-f \-\-
91 which will force all existing *\&.h files to be replaced with their cached copies\&. If an empty command line implied "all", then this would force\-refresh everything in the index, which was not the point\&. But since git\-checkout\-index accepts \-\-stdin it would be faster to use:
94 $ find \&. \-name '*\&.h' \-print0 | git\-checkout\-index \-f \-z \-\-stdin
96 The \-\- is just a good idea when you know the rest will be filenames; it will prevent problems with a filename of, for example, \-a\&. Using \-\- is probably a good policy in scripts\&.
101 To update and refresh only the files already checked out
104 $ git\-checkout\-index \-n \-f \-a && git\-update\-index \-\-ignore\-missing \-\-refresh
106 Using git\-checkout\-index to "export an entire tree"
107 The prefix ability basically makes it trivial to use git\-checkout\-index as an "export as tree" function\&. Just read the desired tree into the index, and do:
111 $ git\-checkout\-index \-\-prefix=git\-export\-dir/ \-agit\-checkout\-index will "export" the index into the specified directory\&.
113 The final "/" is important\&. The exported name is literally just prefixed with the specified string\&. Contrast this with the following example\&.
116 Export files with a prefix
119 $ git\-checkout\-index \-\-prefix=\&.merged\- MakefileThis will check out the currently cached copy of Makefile into the file \&.merged\-Makefile\&.
124 Written by Linus Torvalds <torvalds@osdl\&.org>
129 Documentation by David Greaves, Junio C Hamano and the git\-list <git@vger\&.kernel\&.org>\&.
134 Part of the \fBgit\fR(7) suite