From 810bf1f9448c1db7f52cfa43c077c677fb080fce Mon Sep 17 00:00:00 2001 From: Junio C Hamano Date: Fri, 4 Nov 2005 00:04:17 -0800 Subject: [PATCH] Documentation: git-add -- do not say "cache", add examples. Its use of git-ls-files --others is very nice, but sometimes gives surprising results, so we'd better talk about it. Signed-off-by: Junio C Hamano --- Documentation/git-add.txt | 43 +++++++++++++++++++++++++++++++++++---- 1 file changed, 39 insertions(+), 4 deletions(-) diff --git a/Documentation/git-add.txt b/Documentation/git-add.txt index 32300297d..4cae41267 100644 --- a/Documentation/git-add.txt +++ b/Documentation/git-add.txt @@ -3,7 +3,7 @@ git-add(1) NAME ---- -git-add - Add files to the cache. +git-add - Add files to the index file. SYNOPSIS -------- @@ -11,13 +11,14 @@ SYNOPSIS DESCRIPTION ----------- -A simple wrapper for git-update-index to add files to the cache for people used -to do "cvs add". +A simple wrapper for git-update-index to add files to the index, +for people used to do "cvs add". + OPTIONS ------- ...:: - Files to add to the cache. + Files to add to the index. -n:: Don't actually add the file(s), just show if they exist. @@ -26,6 +27,40 @@ OPTIONS Be verbose. +DISCUSSION +---------- + +The list of given to the command is fed to `git-ls-files` +command to list files that are not registerd in the index and +are not ignored/excluded by `$GIT_DIR/info/exclude` file or +`.gitignore` file in each directory. This means two things: + +. You can put the name of a directory on the command line, and + the command will add all files in it and its subdirectories; + +. Giving the name of a file that is already in index does not + run `git-update-index` on that path. + + +EXAMPLES +-------- +git-add Documentation/\\*.txt:: + + Adds all `\*.txt` files that are not in the index under + `Documentation` directory and its subdirectories. ++ +Note that the asterisk `\*` is quoted from the shell in this +example; this lets the command to include the files from +subdirectories of `Documentation/` directory. + +git-add git-*.sh:: + + Adds all git-*.sh scripts that are not in the index. + Because this example lets shell expand the asterisk + (i.e. you are listing the files explicitly), it does not + add `subdir/git-foo.sh` to the index. + + Author ------ Written by Linus Torvalds -- 2.26.2