X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=Documentation%2Fgit-add.txt;h=ae24547c8a03f5a2b9b850062c6237b35cff70c7;hb=b4a081b428c607f98c5d0a0eec8d543dc1f2abcd;hp=32300297d6b04f71679b6052945a4c77a7fc640b;hpb=918db541e0e833b695ee45ee6cf563d018096860;p=git.git diff --git a/Documentation/git-add.txt b/Documentation/git-add.txt index 32300297..ae24547c 100644 --- a/Documentation/git-add.txt +++ b/Documentation/git-add.txt @@ -3,21 +3,22 @@ git-add(1) NAME ---- -git-add - Add files to the cache. +git-add - Add files to the index file SYNOPSIS -------- -'git-add' [-n] [-v] ... +'git-add' [-n] [-v] [--] ... 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. @@ -25,6 +26,48 @@ OPTIONS -v:: Be verbose. +--:: + This option can be used to separate command-line options from + the list of files, (useful when filenames might be mistaken + for command-line options). + + +DISCUSSION +---------- + +The list of given to the command is fed to `git-ls-files` +command to list files that are not registered 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. + +See Also +-------- +gitlink:git-rm[1] Author ------