Git二进制文件冲突解决
在我们合并分支的时候,如果两个分支都进行了修改那么就会产生合并冲突。对于非二进制文件的冲突解决,git会给出冲突的位置我们可以手动修改然后再commit。但是对于非二进制文件无法手动编辑,我们只能用下面的办法取其中的一个版本。
git checkout FILE --ours{--theirs}
--ours 表示检出当前分支,即合并后保存当前分支的改动而丢弃另外一个分支的改动。
--theirs 表示检出另外一个分支,即保存另外一个分支的改动丢弃当前分支的改动。 比如,有两个均进行修改了的分支A,B。假设我们当前在A分支需要将B分支合并到A上。此时有一个文件test.docx都被两个分支修改了。冲突解决过程如下:$ git merge B #试图将B分支合并到A分支上,会提示test.docx合并冲突 $ git checkout test.docx --ours #保留A分支(当前分支)上的改动 $ git add test.docx #提交改动后的文件 $ git commit -m "解决了test.docx上的冲突,保留了A分支改动"