当前位置:   article > 正文

VSCode msys2/git wrapper.bat Source control无法识别git仓库the folder currently open doesn‘t have a git rep_vscode sourcecontrol

vscode sourcecontrol

问题描述:

  • Windows (10/11)
  • VSCode v1.78.2
  • git: 使用msys2安装的git: pacman -S git

以上环境,可以在终端环境中正常使用git命令:创建仓库、commit/push等,但是vscode打开一个git仓库文件夹后 左侧标签栏的Source Control却提示the folder currently open doesn't have a git rep

解决方案:

  • https://github.com/microsoft/vscode/issues/4651#issue-143290321
  • 原因是msys2的git返回的路径为linux风格/c/path, 而不是windows风格C:/path,导致vscode的source control无法识别
  • 创建一个git-wrapper.bat, 可以放到msys2的安装目录下,然后在vscode中指定为git-path "git.path": "E:\\msys2\\msys64\\git-wrap.bat", 然后重新打开vscode即可
    • 注意第二行chcp 65001是设置为utf-8编码使这个脚本支持中文路径,因为win默认不是unicode编码,所以需要这行
@echo off
chcp 65001 > nul
setlocal

rem If you don't add path for msys2 into %PATH%, enable following line.
rem set PATH=e:\msys2\msys64\usr\bin;%PATH%

if "%1" equ "rev-parse" goto rev_parse
git %*
goto :eof
:rev_parse
for /f %%1 in ('git %*') do cygpath -w %%1

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
声明:本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号