Name

add

Synopsis

git add filename ...

Add or update a file in the index so its changes will be committed upon the next call to git commit. This is called staging the change. Unlike other systems, Git commits only the exact file contents that you have added, so if you make further changes to a file, you will need to add it again before running git commit.

With the -p option, Git lets you stage individual changes (“hunks”) interactively, even inside a particular file. You can use this to help break your commits into smaller, more understandable pieces.

Options

-n (no-op)
-v (verbose)
-f (force)
-p (partial)

Examples

To stage a new or updated file in the index:

$ git add myfile.c

To stage all the files in the current directory, except the ones ignored by .gitignore:

$ git add.

To add a file even though it is ignored by .gitignore:

$ git add myfile.o
The following paths are ignored by one of your .gitignore
files:
myfile.o
Use -f if you really want to add them.
fatal: no files added
$ git add -f myfile.o

To add only part of a file:

$ git add -p README
diff --git a/README b/README
index 42644cd..e2ad5c3 100644
--- a/README
+++ b/README
@@ −1 +1,2 @@
...
Stage this hunk [y,n,q,a,d,/,e,?]? y

Get Linux in a Nutshell, 6th Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.