我正在尝试使用 git 做一些自动化脚本,简单的事情,例如更新子模块、移动到正确的标签等,但我现在发现的问题之一是 git 现在强制您确认合并消息。有什么办法可以抑制这种行为的发生吗?
您可以将
--no-edit
开关添加到 git-merge
,它不会要求您确认合并消息。
为了防止 git 在 mac 上提示您提交提交消息,请将其添加到您的 .bashrc 或 .bash_profile 中(了解有关两个文件之间差异的更多信息)
export GIT_MERGE_AUTOEDIT=no
然后在您的终端中输入:
source ~/.bashrc
重新加载 bash 文件并继续,不受任何干扰。
使用此命令:
git merge other_branch --commit --no-edit
--commit
合并后立即自动提交。
--no-edit
以防止显示提交消息编辑器。
您可以将编辑器更改为不显示,方法是将
vim
替换为 cat
或 true
,例如:
GIT_EDITOR=true git merge branch_name
这将自动填充合并消息。
请注意,给出的所有答案都有效,但没有一个解决了我的具体用例。具体来说,我的用例是在修复冲突后执行
git merge --continue
并且不想编辑我的环境变量(因为有时我希望编辑器显示,有时不显示)。因此,经过一番谷歌搜索后,我发现我可以将 -c core.editor=true
传递给命令以使 git 不打开编辑器,这使得命令:
git merge -c core.editor=true --continue