cod*_*ave 7 git version-control git-commit git-alias
我有时会git commit -amend
在我真正想要的时候不小心打字git commit --amend
.Git检测到并问我
$ git commit -amend
error: did you mean `--amend` (with two dashes ?)
Run Code Online (Sandbox Code Playgroud)
这很棒.
但是,有时我会写git commit -ammend
,然后git会接受这个并将我的拼写错误视为git -a -m "mend"
,所以它只是提交日志消息"mend".
我正在寻找一种方法来阻止git这样做.我试图定义一个别名,git commit -ammend
但现在失败了.您对如何处理此问题有任何建议吗?
git commit --amend
(正确拼写)实际上比git commit -a -m "mend"
. 前者将重写现有提交,用新提交替换它,因此这或多或少是一个破坏性命令。然而,后者只会创建一个你不打算做的提交。这是一个建设性的命令,它不会重写任何现有的历史记录,而只是增加它。
添加您不打算添加的提交可能很麻烦,但根本没有问题。您可以使用git reset --soft HEAD~1
. 这将重置指向提交之前的分支指针,而不会影响您的工作目录。
当然,您也可以撤消提交的修改,但这更具破坏性的命令,您需要小心一点。
所以我个人不会打扰 Git 以错误的方式解释它。是的,这很烦人,但仅此而已。当您注意到它时,只需将其撤消。
我个人会推荐什么,特别是如果你发现自己更频繁地修改提交,为git commit --amend
. 我个人使用git amend
. 您可以使用以下命令进行设置:
git config --global alias.amend "commit --amend"
Run Code Online (Sandbox Code Playgroud)
-C HEAD
如果您不想触发编辑但只想保留原始提交消息,您也可以添加(我经常这样做,所以这是我使用的别名):
git config --global alias.amend "commit --amend -C HEAD"
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
987 次 |
最近记录: |