我正在Win Vista开发VPC上安装msysgit 1.6.4 beta。安装屏幕正在询问我要使用Unix行终止还是DOS行终止。通常,我会选择DOS,但是设置文本表明DOS终止可能意味着文件不能与所有Git的命令行工具一起使用。 Unix行终止指出“...大多数[Windows]应用程序都可以处理此...”。
有谁知道我应该选择哪个选项通过VS 2008工作通过 shell 使用Git?
最佳答案
实际上,在msysgit的安装过程中进行的设置是为了修复core.autocrlf
config的值。
core.autocrlf
我要坚持不要试图自动转换任何东西,副作用太重要了(就潜在的合并冲突而言,尤其是在具有不同环境的分布式开发中)
如果您的工具可以处理Unix风格的行终止,则应将其设置为产生Unix行,然后可以由Windows(VS2008,Notepad++,...)和Unix读取,并且可以由任何“sh” Git处理-脚本。
但是,如果将
core.autocrlf
设置为false,则转换文本行终止的决定将是自愿的,而不是背景不可见的副作用。在“How line ending conversions work with
git core.autocrlf
between different operating systems”中查看更多|当|在以下情况下产生转换
|提交各种文件|从回购中 checkout -
| EOLs回购和|里面有混合文件
| core.autocrlf值:| core.autocrlf值:
-------------------------------------------------- ------------------------------
文件|真实|输入|错误真实|输入|假
-------------------------------------------------- ------------------------------
Windows-CRLF | CRLF-> LF | CRLF-> LF |原样|原样|原样|原样
Unix -LF |原样|原样|原样| LF-> CRLF |原样|原样
Mac -CR |原样|原样|原样|原样|原样|原样
混合CRLF + LF |原样|原样|原样|原样|原样|原样
混合CRLF + LF + CR |原样|原样|原样|原样|原样|原样
关于git - Windows(msysgit)上的Git 1.6.4 Beta-Unix或DOS线路终止,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1249932/