我假设两者都以相同的方式工作。两者都会将每个文件添加到索引中。但我似乎错了。
git add -u和
发布于 2010-02-03 15:56:59
它是mentioned here (早于Git2.0)的git陷阱之一。
git add .仅添加已存在的内容,而不添加已删除的内容(如果已跟踪)。
git add .
git commit
git status
//hey! why didn't it commit my deletes?, Oh yeah, silly me
git add -u .
git commit --amendgit add -A会负责这两个步骤。
git add <path>现在与"git add -A <path>“相同,因此"git add dir/”将注意到您从目录中删除的路径并记录删除。
在旧版本的Git中,"git add <path>“用于忽略删除。如果你真的想要,你可以说"git add --ignore-removal <path>“来在<path>中只添加添加或修改过的路径。
警告(git1.8.3 April 2013, for upcoming git2.0)。
我已经将我的答案从git add -u修改为git add -u .:
git add -u将在Git2.0中对整个树进行操作,以与"git commit -a“和其他命令保持一致。
因为没有机制让"git add -u“表现为"git add -u .",所以对于那些习惯于"git add -u”(没有pathspec)的人来说,在Git2.0到来之前开始训练他们的手指来明确地说"git add -u .“是很重要的。
正如我在"e“中提到的那样
发布于 2010-02-03 15:55:02
就像手册上说的:git add .会添加当前目录中的所有文件,而git add -u .只会添加那些已经被跟踪的文件。
发布于 2010-02-03 15:56:47
git add documentaiton
git add . 添加当前目录中的所有文件
git add -u 仅更新当前正在跟踪的文件。
https://stackoverflow.com/questions/2190409
复制相似问题