2017-09-01 129 views
0

有没有一种方法可以更新我刚刚对本地分支提交的提交消息?将最近一次提交的提交消息更新到本地分支

原因是:当我推送时,远程站点有一个策略,要求每个提交消息都以一定的咒语开始,否则它会拒绝提交。

这是一个相当大的工作时间和大量变化的提交。只是想知道我是否可以避免必须执行--hard reset并重做我的更改?

+2

的可能的复制[如何修改现有的,unpushed提交?](HTTPS:/ /stackoverflow.com/questions/179123/how-to-modify-existing-unpushed-commits) – phd

回答

2

您可以轻松更新以前的提交消息。只要说:

git commit --amend 

你首先要确保你没有改变的阶段,否则他们会被添加到提交。要做到这一点,请检查git diff未显示更改,或者查阅git status。或者说git reset以取消您可能拥有的任何更改。

如果您的编辑器在Git中配置正确,它将出现,以便您可以交互编辑提交消息(旧消息将首先在编辑器中加载)。如果你,如果你在* nix机器上,并且想使用Emacs没有一个编辑器设置,例如:

VISUAL=emacs git commit --amend 

通常你会得到默认VI。

如果您不能确定哪个提交您要修改,只是说:

git show 
+0

你为我节省了几个小时的重新工作,你在5分钟内应该得到一个绿色的checkie。 –

2

尝试git commit --amend -m <new message>

+0

这是我在vi写的一个大消息。我可以不使用'-m'开关并转到vi吗? –

+0

非常感谢。 –

相关问题