【发布时间】:2013-12-13 20:47:24
【问题描述】:
我在 linux 机器上有一个裸 git 存储库,我正在从 Windows 机器推送到它,并使用 linux 机器上的 post-receive 挂钩将其签出到本地文件夹。
在 Windows 机器上,我有 core.autocrlf=true,在 linux 机器上是 core.autocrlf=input。我还有一个 .gitattributes 文件,其内容如下:
* text=auto
*.csv text
在 linux 机器上,我将存储库中的 csv 文件(由 Windows 机器生成)与 linux 机器生成的非存储库文件进行比较:
diff -iw -U0 repofile.csv localfile.csv > out.txt
例如,当我在 vi 中分别打开 repofile.csv 和 localfile.csv 时,两个文件都没有 CR 字符,这正是我想要的。但是,当我打开 out.txt 时,看哪,每行末尾都有 CR 字符,涉及 repofile.csv 中的一行。
什么给了?当两个输入文件都没有 CR 字符时,为什么 CR 字符会出现在 diff 的输出中,我对此完全感到困惑。
【问题讨论】: