You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode+GitLens拉取代码遇警告:文件系统不记录所有权,如何解决?

解决VSCode+GitLens中Git仓库无法操作及“不记录文件系统所有权”警告问题

问题根源

这个警告是Git安全机制触发的:当仓库所在文件系统不支持记录文件/目录所有权(比如FAT32、exFAT这类跨平台文件系统,或是网络共享卷),Git会判定仓库存在权限风险,进而限制操作。Sublime Merge因为调用Git的方式不同,或是默认绕过了该检查,所以未触发问题。

解决方案

1. 给目标仓库单独配置安全目录(优先级高于全局)

全局safe.directory '*'可能因VSCode的Git环境未正确读取,或是Git版本低于2.35.2(该版本才支持通配符)而失效。直接给仓库添加本地配置:

  • 打开仓库根目录下的.git/config文件
  • 添加如下内容:
[safe]
    directory = 你的仓库绝对路径

示例:Windows下填directory = D:/Projects/MyRepo,macOS/Linux下填directory = /Volumes/ExternalDrive/MyRepo

2. 指定VSCode使用系统全局Git

VSCode自带的Git版本可能和你系统中的Git版本不一致,导致全局配置不生效:

  • 打开VSCode设置(快捷键Ctrl+,/Cmd+,)
  • 搜索git.path,设置为系统Git的绝对路径(比如Windows下C:/Program Files/Git/bin/git.exe,macOS下/usr/bin/git)
  • 重启VSCode后重试操作

3. 禁用Git的所有权检查(谨慎使用)

如果以上方法都无效,可直接关闭Git的权限追踪机制,彻底消除警告:

git config --global core.filemode false

注意:该操作会让Git忽略文件权限的变更记录,若你需要依赖Git追踪权限变化,请勿使用此方法。

验证方式

完成配置后,在VSCode终端的仓库目录下执行git status,若未再出现警告,说明配置生效,此时GitLens的pull等操作即可正常运行。

内容的提问来源于stack exchange,提问作者user1799803

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 19:18:17