summaryrefslogtreecommitdiff
path: root/Documentation/git-add.txt
blob: 89e461402e6d1476c192daca0c24700707ca432b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
git-add(1)
==========

NAME
----
git-add - Add files to the index file.

SYNOPSIS
--------
'git-add' [-n] [-v] <file>...

DESCRIPTION
-----------
A simple wrapper for git-update-index to add files to the index,
for people used to do "cvs add".


OPTIONS
-------
<file>...::
	Files to add to the index.

-n::
        Don't actually add the file(s), just show if they exist.

-v::
        Be verbose.


DISCUSSION
----------

The list of <file> 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.


Author
------
Written by Linus Torvalds <torvalds@osdl.org>

Documentation
--------------
Documentation by Junio C Hamano and the git-list <git@vger.kernel.org>.

GIT
---
Part of the gitlink:git[7] suite