git commit 中 -CHEAD 是什么意思?

chi*_*t24 4 git github git-commit

GitHub 文档页面上,我看到了以下命令:

$ git commit --amend -CHEAD
# Amend the previous commit with your change
Run Code Online (Sandbox Code Playgroud)

git commit --amend以前使用过该命令,但还没有遇到过这个-CHEAD参数。在这种情况下是什么-CHEAD意思,它与 有何不同--no-edit

tor*_*rek 7

-CHEAD(我通常会拼写为-C HEAD)在这里是不必要的,但它的含义很简单。正如文档git commit所述,该-C选项是以下缩写--reuse-message

\n
\n

-C <commit>
\n --reuse-message=<commit>
\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0采用现有的提交对象,并在创建提交时重用日志消息和作者信息(包括时间戳)犯罪。

\n
\n

这与(小写)选项类似-c,只有一个简单的区别:

\n
\n

-c <commit>
\n --reedit-message=<commit>
\n\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0\xc2\xa0 类似-C,但是与-c编辑器被调用,以便用户可以进一步编辑提交消息。

\n
\n

So相当于, 或者,如果您愿意,可以交换选项的大小写并添加。-C commit-c commit --no-editc--edit

\n

名称HEAD全部大写,其工作方式如gitrevisions 文档中所述:

\n
\n

HEAD命名工作树中的更改所基于的提交

\n
\n

(或者等效地,当前签出的提交)。因此-C HEAD意味着从当前提交中获取提交消息,而不对其进行编辑。

\n

With --amend,--no-edit表示从当前提交中取出提交消息,而不对其进行编辑,--edit表示从当前提交中取出提交消息,但停止编辑它。所以这与 完全等价--amend。对于其他提交选项,-C-F-m选项指定可以按指定编辑或不编辑的初始提交消息的源。

\n