为什么 git 阻止合并二进制文件?
Why does git prevent merging binary files?
我正在浏览 yarn 的 berry 存储库并在他们的 .gitattributes
文件中偶然发现了这个设置:
# Mark .pnp.js as binary to prevent git from trying to merge it
/.pnp.js binary linguist-generated
为什么 git 默认情况下会阻止自动合并二进制文件?是不是因为大多数编辑器在编辑此类文件的内容时表现不佳?
首先是因为没有意义。如何合并两个可执行文件?结果会怎样?它也可以执行吗?
其次,因为 git 在技术上面向使用线条。它逐行合并文件(嗯,行块)。二进制文件没有行。
我正在浏览 yarn 的 berry 存储库并在他们的 .gitattributes
文件中偶然发现了这个设置:
# Mark .pnp.js as binary to prevent git from trying to merge it
/.pnp.js binary linguist-generated
为什么 git 默认情况下会阻止自动合并二进制文件?是不是因为大多数编辑器在编辑此类文件的内容时表现不佳?
首先是因为没有意义。如何合并两个可执行文件?结果会怎样?它也可以执行吗?
其次,因为 git 在技术上面向使用线条。它逐行合并文件(嗯,行块)。二进制文件没有行。