在 VSCode 中未发生变化,但 Git 显示有差异的原因及解决方法。
1、换行符不一致
不同的操作系统默认的换行符不同,Windows 使用\r\n
, Linux 使用 \n
,如果文件在不同的操作系统之间移动,可能会导致换行符不一致,从而显示为修改。可以通过修改.gitconfig
配置来解决:
第一种方式通过命令行修改
# 全局 Git 设置
git config --global core.autocrlf false
git config --global core.filemode false
git config --global core.safecrlf true
# 项目 Git 设置
git config --local core.autocrlf false
git config --local core.filemode false
git config --local core.safecrlf true
第二种方式直接修改 .gitconfig
文件
全局修改.gitconfig
文件,Windows 系统一般存放于 C: -> 用户 -> xxx -> .gitconfig
[ C:Users/xxx/.gitconfig],在文件中加入以下配置
项目修改,找到当前项目的 .git 文件中 config 文件(左侧 Git 面板不显示隐藏文件 .git 可参考第 3 步中的files.exclude
配置,去掉.git 文件夹),在文件中加入以下配置;
[core]
autocrlf = false
filemode = false
safecrlf = true
2、忽略文件权限
在 VSCode 的终端中执行以下命令来忽略文件权限问题
# 全局忽略
git config --global core.filemode false
# 局部忽略
git config --local core.filemode false
3、隐藏文件和文件夹
在 VSCode 的配置文件中搜索 files.exclude
,检查是否有相关的文件或文件夹被排除在 Git 面板之外,并进行调整。