我怎样才能git apply --index不因为一个大块失败而完全中止?我有一个 100K+ 的补丁,其中有几十个文件被删除和添加,手动做patch -p1, git add,git rm跳舞会很痛苦。
编辑: git apply --reject --index似乎完成了三分之二的工作:应用补丁并暂存删除的文件以进行删除,但不添加新文件。
我怎样才能git apply --index不因为一个大块失败而完全中止?我有一个 100K+ 的补丁,其中有几十个文件被删除和添加,手动做patch -p1, git add,git rm跳舞会很痛苦。
编辑: git apply --reject --index似乎完成了三分之二的工作:应用补丁并暂存删除的文件以进行删除,但不添加新文件。
从 git 版本 1.7.12 开始,git apply有一个--3way(or -3) 选项,它将:
当它遇到合并冲突时,对于每个冲突的块,它将:
<<<<<<< ours,==============和>>>>>>> theirs标记之间。... 有冲突的文件不会被暂存:您必须手动修复它们,git add然后再修复它们。
尝试git apply --reject <patchfile>
这就是我所做的,
首先,执行git apply --reject. 然后以交互方式运行git add -p并选择帅哥。add -p你也可以使用其他 git GUI 来代替。要添加新文件,如果未添加,请手动添加。