我想将某个回购中的某些文本文件设置为要以二进制形式克隆/下载。即:在git中绕过CRLF设置,仅克隆每个字节。
[git中有无数关于CRLF的帖子。但是通常它们与整个项目的常规设置有关,主要取决于您使用的是Linux还是Windows。
但是我面临着前所未有的局面。我愿意在我的项目中设置一个文件夹,其中包含RFC 5322定义的示例电子邮件,这些示例电子邮件的行尾正好是CRLF
。这是一个与电子邮件相关的项目,这些将用于单元测试。
如果我离开系统来按需要处理文本文件,则在许多情况下,这些文件将下载为LF
。
我希望以“二进制模式”“强制”下载这几个文件,因此无论您在git clone
的平台或设置上,这些文件都不会丢失单个字节;否则会违反标准。
add
或commit
开关吗?.gitattributes
文件中将这些文件标记为二进制文件,但这将防止它们被扩散和合并,这可能不是您想要的。更简单的方法是将它们指定为具有CRLF行尾,例如:*.mbox eol=crlf
这将迫使这些文件以CRLF结尾写入工作树,而不管平台如何。如果出于某种原因确实要将它们标记为二进制,则可以将eol=crlf
替换为binary
。例如,如果您的电子邮件包含原始的8位未编码数据,则可能需要这样做。