git-add(1) ========== NAME ---- git-add - Add files to the index file SYNOPSIS -------- 'git-add' [-n] [-v] [--] ... DESCRIPTION ----------- A simple wrapper for git-update-index to add files to the index, for people used to do "cvs add". It only adds non-ignored files, to add ignored files use "git update-index --add". OPTIONS ------- ...:: Files to add to the index (see gitlink:git-ls-files[1]). -n:: Don't actually add the file(s), just show if they exist. -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] gitlink:git-ls-files[1] Author ------ Written by Linus Torvalds Documentation -------------- Documentation by Junio C Hamano and the git-list . GIT --- Part of the gitlink:git[7] suite