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

WSL Ubuntu在VSCode打开Git目录时生成重复文件问题求助

WSL Ubuntu 22 + VSCode 打开文件生成带奇怪编码后缀的重复文件问题解决

这种问题确实有不少开发者遇到过,它和WSL与Windows的文件系统交互、VSCode的WSL扩展同步机制,以及Git的换行符配置都有关系——Git目录场景下更容易触发,但并非仅Git目录才会出现。以下是经过验证的解决方法:

1. 调整Git换行符配置

Git的自动换行符转换是常见诱因,在WSL终端执行以下命令修改全局配置:

git config --global core.autocrlf false
git config --global core.eol lf

这样可以避免Git在Windows和Linux文件系统间自动转换换行符,减少VSCode同步文件时产生的临时文件残留。如果仅针对单个项目,去掉--global参数在项目目录执行即可。

2. 优化VSCode WSL扩展设置

  • 打开VSCode设置(快捷键Ctrl+,),搜索并开启wsl.fileWatcher.polling,启用轮询式文件监听,避免WSL与Windows文件系统的监听机制冲突。
  • 搜索files.watcherExclude,添加以下规则排除临时文件:
    "files.watcherExclude": {
      "**/.git/**": true,
      "**/*.*.{[0-9a-f]{8}}": true
    }
    
  • 确保VSCode的WSL扩展是最新版本,旧版本存在已知的文件同步bug,更新后可修复部分异常。

3. 清理VSCode WSL同步缓存

在WSL终端执行命令清理Windows侧的VSCode远程缓存:

sudo rm -rf /mnt/c/Users/你的Windows用户名/AppData/Local/Temp/vscode-remote-wsl*

清理完成后重启VSCode和WSL(Windows终端执行wsl --shutdown再重新打开),可解决缓存损坏导致的重复文件问题。

4. 配置WSL文件系统挂载参数

创建或编辑WSL的/etc/wsl.conf文件,添加以下内容:

[automount]
options = "metadata,umask=0022,fmask=0133"
mountFsTab = false

保存后执行wsl --shutdown重启WSL,优化WSL与Windows文件系统的交互权限和编码处理,减少文件异常生成。

以上方法中,前两步是最常用的解决手段,多数用户调整后即可消除重复文件问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.20 10:10:04