我注意到VSCode中有一个奇怪的行为,当我保存一个文件时,即使我没有做任何修改,我也可以在右下角看到它从CRLF变成LF。即使我做了几个修改,git也会跟踪额外的行,因为它们是同时添加和删除的。我在Windows上工作,到目前为止我没有任何问题,它刚刚开始发生。我试过将VSCode中EOL的全局设置设置为CRLF,并将Prettier扩展也设置为CRLF(因为我无法禁用它),但问题仍然存在。我是新来的,在网上找不到类似的问题,只是说明如何设置CRLF。
2hh7jdfx1#
我遇到过一些类似的问题,因为我在一个有UNIX和Windows环境的团队中工作。我使用Windows,但项目的所有文件都保存在repositorie中,格式为LFeol。在您的情况下(Windows环境),您需要保证Git的默认行为:
LF
eol
git config --global core.autocrlf true
这样,Git会尝试将eol的文件更改为CRLF(新建分支、克隆等)。甚至,您可以尝试在VSCode的用户/工作区设置中添加"files.eol": "\r\n",然后您的IDE会默认使用CRLF(新文件、新行)。
"files.eol": "\r\n"
3pvhb19x2#
首先,确保vscode上的行尾设置设置为crlf。如果你想将其作为全局设置,请按ctr+shift+p并键入user settings json,然后选择第一个选项打开全局设置文件。如果你只想在特定项目上使用它,请在项目基础的.vscode文件夹中创建一个settings.json文件。然后在那里添加此行。
crlf
ctr+shift+p
user settings json
.vscode
settings.json
... "files.eol": "\r\n"
但这并不能解决问题。每次拉取或启动vscode后,更改仍然会显示。只是运行一个git add .将不会显示更多的更改,我认为这是需要的,但你不想每次都这样做。要解决这个问题,您需要在项目的基础上有一个. editorconfig文件。在该文件中,您可以添加:
git add .
[*] ... end_of_line = crlf
应该是这样。
2条答案
按热度按时间2hh7jdfx1#
我遇到过一些类似的问题,因为我在一个有UNIX和Windows环境的团队中工作。我使用Windows,但项目的所有文件都保存在repositorie中,格式为
LF
eol
。在您的情况下(Windows环境),您需要保证Git的默认行为:这样,Git会尝试将
eol
的文件更改为CRLF(新建分支、克隆等)。甚至,您可以尝试在VSCode的用户/工作区设置中添加"files.eol": "\r\n"
,然后您的IDE会默认使用CRLF(新文件、新行)。3pvhb19x2#
首先,确保vscode上的行尾设置设置为
crlf
。如果你想将其作为全局设置,请按ctr+shift+p
并键入user settings json
,然后选择第一个选项打开全局设置文件。如果你只想在特定项目上使用它,请在项目基础的.vscode
文件夹中创建一个settings.json
文件。然后在那里添加此行。但这并不能解决问题。每次拉取或启动vscode后,更改仍然会显示。只是运行一个
git add .
将不会显示更多的更改,我认为这是需要的,但你不想每次都这样做。要解决这个问题,您需要在项目的基础上有一个. editorconfig文件。在该文件中,您可以添加:
应该是这样。