关于Visual Studio源代码文件的行尾
Posted yilang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了关于Visual Studio源代码文件的行尾相关的知识,希望对你有一定的参考价值。
我们都知道,UNIX只使用换行符(linefeed)来结束每一行,而DOS传统上使用CR+LF来结束每一行,Visual Studio应该完全在DOS世界中,但不管出于什么原因,当我们从代码服务器上获取代码后,我有时收到以下消息:
如果文件是从某个外部项目导入的,这是可以理解的,但是这个文件是由Visual Studio本身创建的。呵呵?接受他们“修复”该文件的提议,我稍后将其提交到git存储库并获得另一条消息:
目前还不清楚我的修复是否是一个真正的修复,或者只是一个解决方法,但我相信这些问题源于Visual Studio在每个源文件的开头都包含了字节顺序标记;这是一个三字节序列(EF BB BF),与Unicode编码有关,但这会混淆UTF-8,我也相信行结尾也一样。
修复方法是在项目目录的根目录中使用.editorconfig文件,并告诉它使用UTF-8编码,而不是UTF-8 with-byte-order-mark:
在我的例子中,我关闭了项目,然后打开了项目,而未来的文件保存剥离了字节顺序标记,从而结束了VS和git之间的战斗。我对editorconfig说得还不够多,它允许您配置与项目一起(并跟随)的首选项,并且不要求每个人在每次处理新项目时都调整其Visual Studio选项。所有项目都应该有一个.editorconfig,我很感激VS2017(及以后的版本)支持它。
以上是关于关于Visual Studio源代码文件的行尾的主要内容,如果未能解决你的问题,请参考以下文章
应将哪些 Visual Studio 2013 项目文件签入源代码管理?
Visual Studio 2015 新文件未自动添加到源代码管理
我应该将 Visual Studio 2015 .vs 文件夹添加到源代码管理吗?