Windows上的Git 1.6.4 beta(msysgit) – Unix或DOS行终止
我在我的Win Vista开发VPC上安装msysgit 1.6.4testing版。 安装屏幕正在请求我是否要使用Unix行终止或DOS行终止。 通常,我会selectDOS,但设置文本表明DOS终止可能意味着文件不能与所有的Git的命令行工具。 Unix行终止状态“…大多数[Windows]应用程序可以处理这个…”。
有谁知道我应该select通过我的VS 2008工作的shell使用Git的哪个选项?
在msysgit的安装过程中的这个设置实际上是在这里修复core.autocrlf
configuration的值。
core.autocrlf
如果为true,则在从文件系统读取文件时,将文本文件行中的
CRLF
转换为LF
,并在写入文件系统时将其转换为反向。variables可以设置为“
input
”,在这种情况下,转换只在从文件系统读取时发生,而文件在行末写入LF
。目前,要考虑“文本”(即受到autocrlf机制)的path是纯粹基于内容决定的。
我会坚持不要试图自动转换任何东西,副作用太重要了(就潜在的合并冲突而言,特别是在不同环境下的分布式开发中)
如果你的工具可以处理Unix风格的行终止,你应该把它们设置成产生Unix行,这些行可以被Windows(VS2008,Notepad ++,…)和Unix一样读取,并且可以被任何'sh'Git -scripts。
但是,如果core.autocrlf
设置为false,则转换文本行终止的决定将是一个自愿的明确的决定,而不是背景不可见的副作用。
请参阅“ 如何在不同操作系统之间使用git core.autocrlf
进行转换 ”
| 在|时导致转换 导致转换时 | 提交各种|的文件 退房从回购 - | EOLs INTO回购和| 在它和混合文件 | core.autocrlf值:| core.autocrlf值: -------------------------------------------------- ------------------------------ 文件| true | input| false | true | input| 假 -------------------------------------------------- ------------------------------ Windows-CRLF | CRLF - > LF | CRLF - > LF | 按原样| 按原样| 按原样| 按原样 Unix -LF | 按原样| 按原样| 按原样| LF - > CRLF | 按原样| 按原样 Mac -CR | 按原样| 按原样| 按原样| 按原样| 按原样| 按原样 混合CRLF + LF | 按原样| 按原样| 按原样| 按原样| 按原样| 按原样 Mixed-CRLF + LF + CR | 按原样| 按原样| 按原样| 按原样| 按原样| 按原样
Visual Studio 2008处理Unix线路terminal没有问题。 但是,它会尝试检测具有不一致行终止的文本文件,试图解决这些问题。 另一方面记事本不能正确显示Unix文本文件。