Pat*_*ton 13 git rebase git-rebase
是否可以使用git rebase更改提交消息,但无需重新解决合并冲突?
我需要对旧的仓库进行保护,我不想改变任何实际的代码,只需更改消息.
我试过了--preserve-merges
.
Jor*_*wis 15
git有一个鲜为人知的特征叫做"Reuse Recorded Resolutions"或者rerere.
您可以通过运行全局启用它rerere
.
如果启用了rerere,git将自动保存冲突解决方案,如果遇到相同的冲突,将在以后重用这些解决方案.这样做的最终结果是不要求用户重新解决这些先前看到的冲突.
该功能将在git-scm.com上的帖子中进一步解释.有关更多详细信息,请查看git rerere的帮助文档.
注意:由于该contrib/rerere-train.sh
脚本应该重新训练rerere(您可以在此处查看手动重新训练)
为了确保rerere
忘记当前所有的基准解析度,您现在可以使用Git 2.14.x / 2.15(2017年第三季度)作为官方选项contrib/rerere-train
:--overwrite
标志。
参见Raman Gupta()的commit ad53bf7(2017年7月26日)。(由Junio C Hamano合并--在commit aec68c3中,2017年8月11日)rocketraman
gitster
contrib/rerere-train
:可以选择覆盖现有的分辨率为用户提供一个使用
--overwrite
标志覆盖现有分辨率的选项 。例如,如果用户知道他们的重命名缓存中已经有冲突条目,但是希望根据传递到重定义脚本的合并提交将其删除并重新训练,则可以使用此方法。