diff options
author | Junio C Hamano <gitster@pobox.com> | 2010-01-30 16:03:10 -0800 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2010-01-30 16:03:10 -0800 |
commit | 00d3278c8534a8244ae3447189401111e017fd5d (patch) | |
tree | f1c19903bc10ffe4816642040080fb6cfd5da376 /Documentation/git-checkout-index.txt | |
parent | t6000lib: Fix permission (diff) | |
parent | Add a small patch-mode testing library (diff) | |
download | tgif-00d3278c8534a8244ae3447189401111e017fd5d.tar.xz |
Merge commit 'b319ef7' into jc/maint-fix-test-perm
* commit 'b319ef7': (8132 commits)
Add a small patch-mode testing library
git-apply--interactive: Refactor patch mode code
t8005: Nobody writes Russian in shift_jis
Fix severe breakage in "git-apply --whitespace=fix"
Update release notes for 1.6.4
After renaming a section, print any trailing variable definitions
Make section_name_match start on '[', and return the length on success
send-email: detect cycles in alias expansion
Show the presence of untracked files in the bash prompt.
SunOS grep does not understand -C<n> nor -e
Fix export_marks() error handling.
git repack: keep commits hidden by a graft
Add a test showing that 'git repack' throws away grafted-away parents
git branch: clean up detached branch handling
git branch: avoid unnecessary object lookups
git branch: fix performance problem
git svn: fix shallow clone when upstream revision is too new
do_one_ref(): null_sha1 check is not about broken ref
configure.ac: properly unset NEEDS_SSL_WITH_CRYPTO when sha1 func is missing
janitor: useless checks before free
...
Diffstat (limited to 'Documentation/git-checkout-index.txt')
-rw-r--r-- | Documentation/git-checkout-index.txt | 46 |
1 files changed, 25 insertions, 21 deletions
diff --git a/Documentation/git-checkout-index.txt b/Documentation/git-checkout-index.txt index 6dd6db04bb..62d84836b8 100644 --- a/Documentation/git-checkout-index.txt +++ b/Documentation/git-checkout-index.txt @@ -9,7 +9,7 @@ git-checkout-index - Copy files from the index to the working tree SYNOPSIS -------- [verse] -'git-checkout-index' [-u] [-q] [-a] [-f] [-n] [--prefix=<string>] +'git checkout-index' [-u] [-q] [-a] [-f] [-n] [--prefix=<string>] [--stage=<number>|all] [--temp] [-z] [--stdin] @@ -22,21 +22,26 @@ Will copy all files listed from the index to the working directory OPTIONS ------- --u|--index:: +-u:: +--index:: update stat information for the checked out entries in the index file. --q|--quiet:: +-q:: +--quiet:: be quiet if files exist or are not in the index --f|--force:: +-f:: +--force:: forces overwrite of existing files --a|--all:: +-a:: +--all:: checks out all files in the index. Cannot be used together with explicit filenames. --n|--no-create:: +-n:: +--no-create:: Don't checkout new files, only refresh files already checked out. @@ -68,25 +73,25 @@ OPTIONS The order of the flags used to matter, but not anymore. -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`. +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`. 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: ---------------- -$ find . -name '*.h' -print0 | xargs -0 git-checkout-index -f -- +$ find . -name '*.h' -print0 | xargs -0 git checkout-index -f -- ---------------- 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: +since 'git-checkout-index' accepts --stdin it would be faster to use: ---------------- -$ find . -name '*.h' -print0 | git-checkout-index -f -z --stdin +$ find . -name '*.h' -print0 | git checkout-index -f -z --stdin ---------------- The `--` is just a good idea when you know the rest will be filenames; @@ -97,7 +102,7 @@ Using `--` is probably a good policy in scripts. Using --temp or --stage=all --------------------------- When `--temp` is used (or implied by `--stage=all`) -`git-checkout-index` will create a temporary file for each index +'git-checkout-index' will create a temporary file for each index entry being checked out. The index will not be updated with stat information. These options can be useful if the caller needs all stages of all unmerged entries so that the unmerged files can be @@ -139,19 +144,19 @@ EXAMPLES To update and refresh only the files already checked out:: + ---------------- -$ git-checkout-index -n -f -a && git-update-index --ignore-missing --refresh +$ git checkout-index -n -f -a && git update-index --ignore-missing --refresh ---------------- -Using `git-checkout-index` to "export an entire tree":: +Using 'git-checkout-index' to "export an entire tree":: The prefix ability basically makes it trivial to use - `git-checkout-index` as an "export as tree" function. + 'git-checkout-index' as an "export as tree" function. Just read the desired tree into the index, and do: + ---------------- -$ git-checkout-index --prefix=git-export-dir/ -a +$ git checkout-index --prefix=git-export-dir/ -a ---------------- + -`git-checkout-index` will "export" the index into the specified +`git checkout-index` will "export" the index into the specified directory. + The final "/" is important. The exported name is literally just @@ -161,7 +166,7 @@ following example. Export files with a prefix:: + ---------------- -$ git-checkout-index --prefix=.merged- Makefile +$ git checkout-index --prefix=.merged- Makefile ---------------- + This will check out the currently cached copy of `Makefile` @@ -181,5 +186,4 @@ Junio C Hamano and the git-list <git@vger.kernel.org>. GIT --- -Part of the gitlink:git[7] suite - +Part of the linkgit:git[1] suite |