有没有一种简单的方法来检查合并/ rebase是否会产生文件冲突,而不实际执行合并/ rebase?
我希望能够决定是否:
由于错误的合并(由于人为错误以错误的方式解决冲突引起)更容易检测和反转,如果我做两个头的合并,而不是做了rebase.特别是如果我推动我的改变而后来意识到某些事情搞砸了.
(由于我们没有完全全面的测试套件,所以不可能事先检查所有内容.)
而且......我正在运行Windows.:)
Mac*_*cke 11
所以,在Martin的回答的帮助下,我想出了rebaseif扩展,它做了我想要的.
从本质上讲,它尝试使用内部合并工具进行rebase,如果失败(它可以解决任何冲突),它会中止并与用户的首选工具合并.
有关详细信息,请参阅https://bitbucket.org/marcusl/ml-hgext/src/tip/rebaseif.py.
更新
最近几个月,我又回到了合并,因为它本身就是安全的.由于依赖文件可能会影响更改,因此非冲突的rebase可能仍然存在问题.(即,rebase在合并之前丢失了代码的外观信息).
作为rebaseif的作者,我建议使用普通的旧合并代替.:)