git add。 vs git commit -a

时间:2010-08-22 13:34:24

标签: git version-control git-commit git-add git-commands

有什么区别:

  • git add .
  • git commit -a

我应该同时做这两件事,还是多余的?

3 个答案:

答案 0 :(得分:117)

git commit -a表示与git add -u && git commit几乎相同[*]。

这与git add .不同,因为这会添加未被忽略的未跟踪文件,git add -u仅对已经跟踪的文件进行更改(包括删除)。

[*]如果您不在存储库的根目录下,则存在细微差别。 git add -u对当前目录及下面的文件进行更新,相当于git add -u .git commit -a阶段并提交对所有跟踪文件的更改。

答案 1 :(得分:12)

git commit -a会自动在其知道的所有文件上调用git add。您可以使用git add选择要提交的文件。有关详细信息,请参阅文档:here

答案 2 :(得分:1)

通过使用git commit -a开关和commit命令自动“添加”来自所有已知文件的更改(即已在索引中列出的所有文件)