首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >git提交-修正是危险的

git提交-修正是危险的
EN

Stack Overflow用户
提问于 2016-12-22 16:40:23
回答 1查看 3.6K关注 0票数 11

有时候,当我真的想要git commit -amend的时候,我会意外地输入git commit --amend。吉特发现了这个,就问我

代码语言:javascript
运行
复制
$ git commit -amend
error: did you mean `--amend` (with two dashes ?)

这太棒了。

但是,有时我编写git commit -ammend,然后git就会接受它,并将我的拼写错误作为git -a -m "mend"来处理,因此它只会提交日志消息“修复”。

我正在寻找一种方法来阻止git这样做。我试图为git commit -ammend定义一个别名,但目前失败了。你对如何处理这个问题有什么建议吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-22 16:51:48

git commit --amend (拼写正确)实际上比git commit -a -m "mend"更危险。前者将重写现有的commit,用新的commit替换它,因此这或多或少是一个破坏性的命令。但是,后者只会创建一个您不打算做的提交。这是一个建设性的命令,没有重写任何现存的历史,而只是增加了它。

添加您不打算添加的提交可能会很麻烦,但一点问题也没有。您可以使用git reset --soft HEAD~1简单地撤消提交(而不丢失任何内容)。这将在不影响工作目录的情况下重置提交之前的分支指针。

当然,您也可以撤销提交的修改,但是这更像是一个破坏性的命令,您需要谨慎一点。

所以我个人不想让吉特用错误的方式来解释它。是的,这很烦人,但仅此而已。当你注意到它的时候就把它解开。

我个人建议,特别是如果您发现自己更频繁地修改提交,以便为git commit --amend创建别名。我个人使用git amend。您可以使用以下ocmmand设置它:

代码语言:javascript
运行
复制
git config --global alias.amend "commit --amend"

如果不想触发编辑,但只想保留原始提交消息(我经常这样做,所以这是我使用的别名),也可以添加-C HEAD

代码语言:javascript
运行
复制
git config --global alias.amend "commit --amend -C HEAD"
票数 8
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/41287891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档