了解何时使用git commit -m和git commit -am

app*_*guy 4 git

我在这里的主要问题是,是否总是有意义git commit -am而不是git add.接下来git commit -m呢?

我知道-am表示它将添加修改后的TRACKED文件的所有更改.因此,在我没有添加任何新文件的情况下,只运行git commit -am而不是git add是有意义的,但是它被认为是最佳做法:

git add .

git commit -am "message"
Run Code Online (Sandbox Code Playgroud)

无论如何?

甚至是:

git add -A

git commit -am "message"
Run Code Online (Sandbox Code Playgroud)

sle*_*ske 6

只做以下事情才算是最佳做法:

git add.

git commit -am"message"

无论如何?

不,没有这样的"最佳实践".只要您不想包含任何未跟踪的文件,git add+ git commit -m并且git commit -am将完全相同.

您需要使用以下两种情况git add:

  • 如果你想包括未跟踪的文件,和
  • 如果你不想提交改变的一切

第二点特别是许多人建议不要总是使用的原因commit -a:在处理代码一段时间之后,您的工作副本中经常会有几种不同类型的更改(您正在处理的错误修复,一些不相关的重命名,一些临时更改)用于调试...).commit -a在一次提交中存在太多风险 - 在这些情况下,选择性使用git add更好.

但如果您确定要提交所有更改的内容,请继续使用git commit -a.