【问题标题】:VSCode changing CRFL to LF on file save, and git records a change even if there is noneVSCode 在文件保存时将 CRLF 更改为 LF,即使没有更改也可以获取记录
【发布时间】:2023-03-15 19:30:02
【问题描述】:
我注意到 VSCode 中有一个奇怪的行为,当我保存文件时,即使我不做任何更改,我也可以在右下角看到它从 CRLF 变为 LF。即使我做了几处更改,git 也会同时跟踪添加和删除的额外行。
我在 Windows 上工作,到目前为止我没有任何问题,它刚刚开始发生。我已经尝试在 VSCode 中将 EOL 的全局设置设置为 CRLF,并将 Prettier 扩展也设置为 CRLF(因为我无法禁用它),但问题仍然存在。
我是新手,在网上找不到类似的问题,只是说明如何设置 CRLF。
【问题讨论】:
标签:
git
visual-studio-code
newline
core.autocrlf
lf
【解决方案1】:
我遇到了一些类似的问题,因为我在一个拥有 UNIX 和 Windows 环境的团队中工作。我使用 Windows,但项目的所有文件都保存在存储库中为LFeol。在您的情况下(Windows 环境),您需要保证 Git 的默认行为:
git config --global core.autocrlf true
这样,Git 将尝试将文件的eol 更改为 CRLF,例如(新分支、克隆等)。
甚至,您可以尝试在 VSCode 的用户/工作区设置中添加 "files.eol": "\r\n",然后您的 IDE 将使用 CRLF 作为默认值(新文件、新行)。