我有一个文件调用a.uni,我必须合并解决方案。 但git把a.uni当成二进制文件。 当我合并的解决方案,它总是显示:如何处理文件不是二进制文件(git)
警告:不能合并二进制文件:a.uni(HEAD与549af46 ...测试) 错误:无法适用549af46 ...测试 提示:后解决冲突,标记修正后的路径 提示:用'git add'或'git rm' 提示:并用'git commit'提交结果 其他人可以帮我! 非常感谢。
我有一个文件调用a.uni,我必须合并解决方案。 但git把a.uni当成二进制文件。 当我合并的解决方案,它总是显示:如何处理文件不是二进制文件(git)
警告:不能合并二进制文件:a.uni(HEAD与549af46 ...测试) 错误:无法适用549af46 ...测试 提示:后解决冲突,标记修正后的路径 提示:用'git add'或'git rm' 提示:并用'git commit'提交结果 其他人可以帮我! 非常感谢。
由于您的.uni
文件实际上是一个文本文件,我想它必须包含一些NUL字符(请参阅“How to determine if Git handles a file as binary or as text?”)。
这取决于您想要如何管理合并。
如“Tell git not to merge binary files but to choose”中所述,您可以在.gitattributes
文件中指定合并管理器,该合并管理器将根据您的策略进行合并。
至少,在 “”,你可以尝试,并指定(仍然离子的.gitattributes
文件):
*.uni -text crlf diff
对于Unicode文件,在看 “Can I make git recognize a UTF-16 file as text?”,您可以:
git config --global diff.tool vimdiff ; git difftool commit1 commit2
你也应该确保:
.uni文件的编码类型是否改变(例如UTF-8为ANSI)? Git似乎无法比较/合并不同编码类型的文件。请参阅answer I gave on this post。
那么,.uni文件中有什么?你的.gitattributes文件的内容是什么? – Perception
实际上,它只是uni文件中的一个文本,并且在我的存储库中没有.gitattributes。 – kane