我想做一个git merge将一个分支的工作重新放回另一个分支.
但是,由于已经完成了很多工作并且我要进行非快进合并,我希望提交包含有关合并内容的大量信息.
如果我正在进行正常提交,我可以使用该-m标志,并且编辑器将被激活以便我将详细信息放入(编辑这是不正确的 - 见下文).但是,如果我-m在提交期间使用该标志,它只是告诉我该消息需要内容:
$ git merge development --no-ff -m
error: switch `m' requires a value
Run Code Online (Sandbox Code Playgroud)
由于我有一个相当大的合并消息,我更喜欢编辑器而不是单行字符串.我怎么能得到它呢?
编辑
虽然答案已经涵盖了我的问题,但我意识到-m在正常提交期间使用标志实际上并不启动编辑器(尽管-a如果您正在创建标记).我在正常提交过程中获取编辑器的唯一方法是简单地键入commit没有其他标志或选项.
使用该--no-commit标志,然后键入git commit- 您将能够编辑该消息,然后:
git merge development --no-ff --no-commit
git commit
Run Code Online (Sandbox Code Playgroud)
或者,如果您已经完成了合并,则可以修改合并提交以更改其消息:
git commit --amend
Run Code Online (Sandbox Code Playgroud)