代替git rebase -i
并手动编辑是否有可能提供git rebase
将拾取/放置/挤压列表作为文本文件,或者我是否需要将 GIT_EDITOR 重定向到提供它的脚本?
你需要使用GIT_EDITOR
or GIT_SEQUENCE_EDITOR
就地编辑文件。该程序将接收文件名作为其参数,并且可以是 shell 命令,因此您可以执行以下操作:
GIT_SEQUENCE_EDITOR='sed -i -e '\''2,$s/^pick/fixup/'\' git rebase
两个编辑器的区别在于GIT_SEQUENCE_EDITOR
仅适用于变基待办事项列表,但不适用于提交消息等其他内容,而GIT_EDITOR
适用于两者。因此,例如,如果您想自动压缩由以下命令创建的所有压缩和修复提交git commit --squash
and git commit --fixup
无需提示,您可以执行以下操作:
GIT_SEQUENCE_EDITOR=true git rebase -i --autosquash main
它会在没有提示的情况下自动接受挤压和修复命令,但由于挤压提交,仍然让您的普通编辑器可以编辑提交消息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)