VSCode通过SSHFS挂载Windows虚拟磁盘后Git功能失效如何解决
解决Windows下SSHFS挂载盘在VS Code中Git路径不匹配问题
问题本质
报错的核心原因是:你在远程机器的根目录(对应SSHFS挂载的//sshfs/USER@IP!PORT/)执行了git init,但VS Code的工作区是挂载盘的子目录Z:\site。Git识别Windows绝对路径Z:\site\monfichier.php时,判定其不在仓库根目录范围内,导致功能失效。
解决方案1:调整Git仓库初始化位置
直接在远程机器的/site目录下初始化Git仓库,让仓库根与VS Code工作区路径对应:
- 通过SSH连接远程机器,执行命令:
cd /site git init - 在VS Code中重新打开
Z:\site作为工作区,Git功能即可正常使用。
解决方案2:配置Git的core.worktree参数
若无法重新初始化仓库,可通过Git配置指定工作目录与仓库的映射关系:
- 打开VS Code终端,进入SSHFS挂载的根目录(
Z:\),执行:git config core.worktree Z:\site - 或者手动编辑仓库根目录下的
.git/config文件,添加以下配置(注意Windows路径需用双反斜杠转义):[core] worktree = Z:\\site
解决方案3:重新挂载SSHFS到目标子目录
修改SSHFS挂载命令,直接将远程的/site目录挂载为Windows驱动器,让挂载盘根目录与远程仓库根目录一致:
以WinFsp-SSHFS为例,挂载命令如下:
sshfs USER@IP:/site Z: -p PORT
挂载完成后,VS Code打开Z盘作为工作区,Git路径即可完全匹配。
内容的提问来源于stack exchange,提问作者Thomas
相关产品推荐
相关产品推荐

