我在 Windows 上使用 Intellij IDEA 14,在 Unix 服务器上使用 Git 作为 VCS。 Windows 中的行分隔符是 CLRF (
\r\n
),Unix 中是 LF (\n
)。
在 Git 中,我使用配置 --global core.autocrlf input
。这将在提交时将所有 CRLF 转换为 LF。
当我在格式良好的文件上使用“重新格式化代码”选项时,IDEA 会将文件标记为已更改,并仅在行分隔符中显示差异。
在窗口右下角,将
[CRLF]
更改为 [LF]
我也在 Windows 上进行开发,因为我们的服务器由 Linux 提供支持,并且所有代码都必须基于 Linux,所以我更愿意将所有文件更改为 LF 而不是 CRLF。
来自 git 命令行:
git config --global core.autocrlf false
我正在使用intellij idea,所以这很简单:
1) 文件 --> 设置 --> 编辑器 --> 代码风格: (对于任何新文件都会 被创建)
a.方案:默认
b.行分隔符:unix 和 os x ( )
2) 标记项目根目录 --> 文件 --> 行分隔符 --> LF Unix 和 os x ( )(对于现有文件)
备注:您还可以使用 dos2unix.exe 等应用程序或其他一些脚本。
比我使用命令行所做的:(你也可以从这个想法中做到这一点)
git commit -m "bla bla"
git add .
git push origin master
从那时起,我就没有收到这些警告了
如果您像我一样来到这个线程寻求答案,解释为什么您的单元测试 (JUnit) 无法将生成的 JSON(或任何其他包含行分隔符的结构)与手写的结构进行比较,您应该替换 经过 (对于 Windows)在你的字符串中。上面给出的说明不适用于这种情况。
选择文件夹 -> 文件 -> 文件属性 -> 行分隔符 -> LF
所有文件将被标记为
changed
。
定期提交行分隔符更改。 它会失败,但
changed
标记会消失。
新文件将继承文件夹属性。
在 Intellij 17.3 中,您可以在比较窗口的“比较依据”组合框中选择是否要比较“二进制内容”或“文本”。在第二种情况下,CRLF 和 LF 不会显示为“不同”。
git config --global core.autocrlf false
这对我有用:)
在同一目录中创建 parser.py。 更改名称并运行。 享受))
with open('./file_to_fix.py', 'r') as f:
a = f.read()
with open('./file_to_fix.py', 'w') as f:
# for i in a.split('\r\n'):
# f.write(i)
aa = a.replace('\r\n', '\n')
f.write(aa)
您可以在字符串中使用
System.lineSeparator()
。
这对我很有帮助,因为我的代码必须在 Linux 服务器上检查,而我的本地计算机使用 Windows,因此这两者的行分隔符是不同的。
我也在 Windows 上进行开发,因为我们的服务器由 Linux 提供支持,并且所有代码都必须基于 Linux,所以我更愿意将所有文件更改为 LF 而不是 CRLF。
来自 git 命令行:
git config --global core.autocrlf false
我正在使用intellij idea,所以这很简单:
1) 文件 --> 设置 --> 编辑器 --> 代码风格: (对于任何新文件都会 被创建)
a.方案:默认
b.行分隔符:unix 和 os x ( )
2) 标记项目根目录 --> 文件 --> 行分隔符 --> LF Unix 和 os x ( )(对于现有文件)
备注:您还可以使用 dos2unix.exe 等应用程序或其他一些脚本。
比我使用命令行所做的:(你也可以从这个想法中做到这一点)
git commit -m "bla bla"
git add .
git push origin master
从那时起,我就没有收到这些警告了
如果您像我一样来到这个线程寻求答案,解释为什么您的单元测试 (JUnit) 无法将生成的 JSON(或任何其他包含行分隔符的结构)与手写的结构进行比较,您应该替换 经过 (对于 Windows)在你的字符串中。上面给出的说明不适用于这种情况。
选择文件夹 -> 文件 -> 文件属性 -> 行分隔符 -> LF
所有文件将被标记为
changed
。
定期提交行分隔符更改。 它会失败,但
changed
标记会消失。
新文件将继承文件夹属性。
在 Intellij 17.3 中,您可以在比较窗口的“比较依据”组合框中选择是否要比较“二进制内容”或“文本”。在第二种情况下,CRLF 和 LF 不会显示为“不同”。
git config --global core.autocrlf false
这对我有用:)
在同一目录中创建 parser.py。 更改名称并运行。 享受))
with open('./file_to_fix.py', 'r') as f:
a = f.read()
with open('./file_to_fix.py', 'w') as f:
# for i in a.split('\r\n'):
# f.write(i)
aa = a.replace('\r\n', '\n')
f.write(aa)
您可以在字符串中使用
System.lineSeparator()
。
这对我很有帮助,因为我的代码必须在 Linux 服务器上检查,而我的本地计算机使用 Windows,因此这两者的行分隔符是不同的。