Is there any patch tools that work well with mercurial, when patch-based workflows fail causing .rej hunks in your repo
我正在寻找一种比Mercurial内置的补丁程序更好的补丁程序,或者一种视觉工具来帮助我编辑补丁程序,以便它们被Mercurial或Gnu补丁程序接受。
Mercurial Wiki的主题为HandlingRejects,该主题显示了Patching失败的简单程度。我希望为基于功能分支的功能分支版本控制实现基于汞的工作流,并依赖于在集成补丁之前导出和查看补丁。在我对该想法进行的初步测试中,"修补程序"和"查看并接受并修改"修补程序中最薄弱的链接是拒绝修补程序的方式。
以下是一些常见的案例,这些问题导致我无法导入汞修补程序:
对上游repoA和功能分支repoB都进行了临时更改,在这两个分支上的某处添加了一行。由于两个分支都有历史记录,因此合并工具应该可以看到"有人在repoA中添加了一行,而其他人在repoB中添加了一行"。但是,对于补丁程序导入,这会导致补丁程序导入拒绝和存储库中的.rej文件turd,您必须手动修复(通过编辑.rej文件,直到可以应用它为止)。
上面的Wiki页面提到了在此处找到的mpatch工具。我正在寻找其他更好的合并工具,这些工具(a)可以处理,并且(b)可以处理上面的"处理拒绝"维基页面中提到的琐碎情况。请注意,mpatch不适用于我的目的,似乎我需要的东西更多的是基础工具,而不是补丁工具,就我而言,我可能必须使补丁工具具有语法意识(因此特定于单一编程语言)。
我正在寻找本机甚至通过cygwin之类的可在Windows上使用的工具。尽管我对Linux / Unix样式的工具很满意,但我没有使用Unix / Linux环境。
我目前未使用
此处的相关问题显示了使用TortoiseHg时解决此类问题的方法。
Emacs具有处理
但是,如果真的可行,我会尽可能尝试使用