git add -A 和 git add . 的区别
Ps:原文时间 2016-09-10 13:30
实践
git add -A
和git add .
、git add -u
在功能上看似很相近,但还是存在一点差别
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 1.x):
1 |
|
总结:
git add -A
:提交所有变化git add -u
:提交被修改(modified)和被删除(deleted)文件,不包括新文件(new)git add .
:提交新文件(new)和被修改(modified)文件,不包括被删除(deleted)文件
git版本不同会有所区别:
Git Version 1.x:
New Files |
Modified Files |
Deleted files |
Description | |
---|---|---|---|---|
git add -A | ✅ | ✅ | ✅ | Stage All(new, modified, deleted) files |
git add . | ✅ | ✅ | ❎ | Stage New and Modified files only |
git add -u | ❌ | ✅ | ✅ | Stage Modified and Deleted files only |
Git Version 2.x:
New Files |
Modified Files |
Deleted files |
Description | |
---|---|---|---|---|
git add -A | ✅ | ✅ | ✅ | Stage All(new, modified, deleted) files |
git add . | ✅ | ✅ | ✅ | Stage All(new, modified, deleted) files |
git add —ignore-removal | ✅ | ✅ | ❎ | Stage New and Modified files only |
git add -u | ❌ | ✅ | ✅ | Stage Modified and Deleted files only |
git add -A 和 git add . 的区别
https://webclown.net/2019/02/27/git-add-A-和-git-add-的区别/