没有-a选项的git commit有什么影响?

ben*_*ben 26 git commit

这两个命令有什么区别?

git commit -m "added a new page"
Run Code Online (Sandbox Code Playgroud)

git commit -a -m "added a new page"
Run Code Online (Sandbox Code Playgroud)

我知道-a选项会暂存已修改和删除的文件,但是如果没有-a意味着运行它会是什么?

Joh*_*don 38

您必须使用git add或明确地为承诺更改更改git rm.

如果-a在执行提交时使用该标志,git将自动暂存所有已修改和已删除的文件,而无需使用addrm等等明确地将它们分级.

如果指定-a,则任何已修改或删除但未使用git add或未git rm在提交中显式暂存的文件将被忽略.

更新

正如Gianluigi Zane Zanettini博士所说 - -a不会在索引中添加文件,所以如果您有全新的文件,则不应期望-a对它们进行广告.

http://www.kernel.org/pub/software/scm/git/docs/git-commit.html

  • 小记:`-a`仅适用于修改/删除文件.根据git文档,新文件不会受到影响:`但是你没有告诉Git的新文件不受影响.=>几乎总是更好地做`git add .`而不是`git commit -a`. (4认同)