在Windows机器上工作时是否有任何有unix行结尾的副作用?

我正在使用Windows 7,并有一个git下的node.js项目。 我把我的TortoiseGit设置为autocrlf: falsesafecrlf: false 。 然后将所有项目文件的行结束符更改为LF。 项目正常启动和运行,我没有理由回到CRLF。

这样做后,我应该期待任何副作用?

不,在Windows上使用* nix行尾序列( LF代替CRLF )完全没有问题。 事实上,我个人的build议是确保你的Windows编辑器(如果你在Windows上开发node.js)使用LF

举个例子,我用我的编辑器开发node.js的Visual Studio代码 ,并且在我的用户设置中使用了LF来代替CRLF"files.eol": "\n" 。 现在我不再需要担心了。

CRLF行结束会导致在Linux上运行的node.js应用程序中出现问题,如果您不知道要查找什么,则不是排除故障最直接的方法 。

TL; DR如果您真的关心跨平台(您应该关心),则在开发Windows上的node.js应用程序时使用LF

注意 :只是因为git改变你的行结束并不意味着这是解决scheme。 即使你的版本控制可以改变你的源代码(我不build议这样做),但是如果你做了一个npm publish它将在本地使用你的源文件,并且你可以将CRLFs潜入npmregistry中。

如果所有的工具/编辑器/ IDE是LF兼容的,那么没有问题。

Otherwiese你可能会得到错误或混合行结束保存。

为了确保克隆存储库的其他用户无法进行转换,可以将.gitattributes文件放入根文件夹中,其中包含: * -crlf ,用于禁用所有* -crlf转换。

Interesting Posts