我正在使用Mercurial存储库,我有一个'git'格式的补丁,我想知道如何将该补丁应用到我当前的本地存储库。
由于
答案 0 :(得分:3)
hg import <patchfile(s)>
应该能够处理git风格的补丁。
如果您不希望在导入每个修补程序后自动提交更改,请使用hg import --no-commit <patchfile(s)>
。
Mozilla的常见问题解答提及:https://developer.mozilla.org/en/Mercurial_FAQ#How_can_I_diff_and_patch_files.3f
答案 1 :(得分:2)
尝试hg import --no-commit
,Mozilla有关于Git和Mercurial之间交易补丁的rather useful FAQ。
根据您的平台,您也可以使用patch
,例如patch -p1 < some_patch_from_git.patch
。这可能实际上更好,因为你会看到任何模糊,而不必仅仅为一个补丁来信任作者。
修改强>
如果你的补丁没有干净利落,上述方法都不会起作用。如果帅哥无法应用,那么您的代码库不是补丁期望的代码库。查看拒绝并查看补丁在任何给定行中的预期代码,然后相应地进行rebase。