我已经要求Git在git bash中执行提交,它总是提升VI。
我现在希望取消提交,如何阻止从此处继续提交?
答案 0 :(得分:306)
您有两种选择:
提供空提交消息。如果它是新提交但您尚未保存消息,则只需使用:q!
(退出而不保存)。如果您已经保存(或者您正在修改先前的提交),只需删除整个日志消息并再次保存。这可以通过Vim中的 ggdG + :wq
来完成。
让编辑器以非零退出代码退出。在Vim中,您可以使用:cq
(退出并显示错误代码)。
值得注意的是,您始终可以将工作副本重置为使用git reset HEAD^
进行提交之前的状态。
答案 1 :(得分:56)
:q!
不起作用。它没有更新
提交消息,但它执行修正:-( :cq
完全取消修正案。答案 2 :(得分:2)
总结一下:
git commit
)退出使用:q!
。git commit --amend
)时,删除提交消息(只有前几行不以#开头),例如按住v并使用箭头键选择它,然后按Delete键。 退出:wq
以应用更改!如果您使用:q!
,则更改将丢失,并且将使用先前的提交消息。使用VIM时,在两种情况下都可以退出:cq
- VIM将退出并显示错误代码并且提交将被中止。