如何处理Git合并冲突中的xlsx (二进制)文件?

4
如何处理带有xlsx(二进制)的Git合并冲突?
需要解决冲突:
$ git merge  
warning: Cannot merge binary files: proj/data/specs.xlsx (HEAD vs. 
refs/remotes/origin/master)
Auto-merging proj/data/specs.xlsx
CONFLICT (content): Merge conflict in proj/data/specs.xlsx
Automatic merge failed; fix conflicts and then commit the result.

我想要获取文件的origin/master版本。
git add proj/data/specs.xlsx; git commit

它会保留我本地文件的版本。

如果我要检出文件,会得到以下错误:

$ git checkout labor_um/data/UM_specs.xlsx
error: path 'labor_um/data/UM_specs.xlsx' is unmerged
2个回答

8

Do:

git checkout --theirs proj/data/specs.xlsx
git add proj/data/specs.xlsx
git commit
--theirs标志用于checkout命令,告诉Git使用你正在合并的分支(在本例中为origin/master)的版本。同样,--ours标志将使用你所在的分支(可能是master)的版本。
请注意,在rebase期间,--theirs--ours的定义被交换了。(参考链接)

3
git checkout --theirs proj/data/specs.xlsx

应该使用 origin 上的 xlsx 文件版本,忽略您修改的版本。

这样可以解决冲突,然后需要提交更改。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接