这些文件托管在windows机器上,我想知道我是否冷地使用我的Linux机器来管理git,所以我挂载了共享。然后我看到,当执行git状态时,所有文件都显示为已修改的,并且当试图推送这个共享时,它不会接受我的密钥。
图片来自相同的快照,同时来自同一个文件夹.
Linux

发布于 2012-04-24 08:07:36
这篇博客文章很好地解释了这一点。基本上,设置以下内容是个好主意:
git配置--全局core.autocrlf真
发布于 2012-02-23 00:26:25
您检查过这两台机器上的crlf设置了吗?一个可能是重新创建文件作为CRLF (Windows),而另一个只有LF结束。对于“修改”状态来说,这就足够了。
不要忘记你的个人设置以及回购设置。
发布于 2015-04-10 02:25:23
git在换行符上的行为取决于几种配置:
对于你的情况,我怀疑下面可能是原因。
LF存储。LF转换为CRLF期间,您的本地回购是在Windows下克隆的。git status时,因为"cygwin“认为它在"*inux”环境下工作,所以git认为本地回购应该使用LF签出文本文件。当它实际找到CRLF时,它认为CRLF与LF不同,所以git报告它们被修改了。要验证这一点(而不是修复此问题),您可以这样做:
# under linux
# save your change
git stash
# delete working directory
git rm --cached -r .
# re-checkout
git reset --hard再次运行git status,您将/应该看到输出报告没有任何修改。
参考文献:
注意你的台词的结尾
https://stackoverflow.com/questions/9404386
复制相似问题