Windows 如何在单个文件中用lf替换crlf
如何将具有crlf行返回的单个文件转换为具有lf行返回的文件 当我将文件推送到远程存储库时,git已经正确地自动处理了文件的crlf到lf的转换,但在这种特殊情况下,我并没有推送到存储库。相反,我使用HTML表单上的文件字段将一个文件上载到一个要求该文件具有lf行返回的网站。所以我需要能够单独转换这个文件 我在这台计算机上可用的潜在有用工具是git和Dreamweaver CC 2014.1。(我猜Word、写字板和记事本是不可行的选择,但我愿意接受更正。)Windows 如何在单个文件中用lf替换crlf,windows,git,Windows,Git,如何将具有crlf行返回的单个文件转换为具有lf行返回的文件 当我将文件推送到远程存储库时,git已经正确地自动处理了文件的crlf到lf的转换,但在这种特殊情况下,我并没有推送到存储库。相反,我使用HTML表单上的文件字段将一个文件上载到一个要求该文件具有lf行返回的网站。所以我需要能够单独转换这个文件 我在这台计算机上可用的潜在有用工具是git和Dreamweaver CC 2014.1。(我猜Word、写字板和记事本是不可行的选择,但我愿意接受更正。) 我在Windows7上使用git行命
我在Windows7上使用git行命令。Word和写字板是要避免的永远不要尝试用它修改一些代码,他们会为文件添加额外的代码 要转换行结尾,只需使用或,然后选择文件结尾:Windows、Mac、Linux 以下是使用Scite的示例:
在windows上安装git通常包括该工具 从 设置为字符串值“lf” 此设置强制Git在签入时将行尾标准化为LF,并防止转换为CRLF 当文件被签出时
只需提交
.gittributes
文件,您的文件将在每个系统上以LF
行结尾签出。要从Windows样式文本转换为Unix样式文本:
perl -pe 's/\r$//g' < windows_file.txt > unix_file.txt
perl -pe 's/(?<!\r)\n/\r\n/g' < unix_file.txt > windows_file.txt
perl-pe的//\r$//g'unix\u file.txt
要将Unix样式的文本转换为Windows样式的文本,请执行以下操作:
perl -pe 's/\r$//g' < windows_file.txt > unix_file.txt
perl -pe 's/(?<!\r)\n/\r\n/g' < unix_file.txt > windows_file.txt
perl-pe的/(?对于单个文件,可以使用Notepad++替换实用程序:
- 转到搜索->替换(或ctrl-h)
- 在对话框中选择“扩展”搜索模式
- 将“查找内容”设置为:
\r\n
- 将“替换为”设置为:
\n
- 单击“全部替换”
在右侧底部面板的记事本++中,右键单击区域窗口(CR LF)并选择UNIX(LF),这将用LFs替换所有CRLF
下面是IntelliJ中右下角的设置
下面是右下角VsCode的设置
在根文件夹中,创建一个文件“.gittributes”,并添加以下行:
- 下线=低频
保存文件夹并执行以下操作:
git添加。
...
如果您没有dos2unix,项目的所有文件都将使用echo“$(perl-pe的/\r\n?/'文件名>文件名)
。@rene-Link,谢谢您,.gittributes是一个永久解决方案。