Git Version 1.x:
git add . :他会监控工作区的状态树,使用它会把工作时的所有变化提交到暂存区,包括文件内容修改(modified)以及新文件(new),但不包括被删除的文件。
git add -u :他仅监控已经被add的文件(即tracked file),他会将被修改或删除的文件提交到暂存区。add -u 不会提交新文件(untracked file)。(git add --update的缩写)
git add -A :是上面两个功能的合集(git add --all的缩写)
Git Version 2.x:
在新版本中,add .和add -A的功能相同,用add --ignore-removal .来代替旧版本add .的功能。
以下是Git Version 2.x中的具体操作,用以辅助理解:
git init
echo Change>>ChangeFile
echo Delete>>DeleteFile
git add ChangeFile DeleteFile
git commit -m initial
echo OK>>ChangeFile
rm DeleteFile
echo Add>>AddFile
git status
git add .
git status
git reset
git add --ignore-removal .
git status
git reset
git add -u
git status
git reset
git add -A
git status