迁移到 Visual Studio Code,我在从 IDE 生成 git 命令的方式上遇到问题(源代码控制面板,+ 符号添加到存储库)。出现这样的错误:
> git add -A -- C:\Projects\zwm\uniq.py
fatal: C:\Projects\zwm\uniq.py: 'C:\Projects\zwm\uniq.py' is outside repository at
'/cygdrive/c/Projects/zwm'
显然我正在尝试使用 Cygwin 的
git
版本。找到 git.exe 没有问题,它在路径中。如果我只是从 cmd 窗口中add -A uniq.py
,Git 就可以正常工作。
我可以让 VS Code 生成 cygwin 风格的正斜杠路径吗?或者停止在存储库中使用文件的绝对路径?似乎在设置中找不到解决此问题的任何内容。
这是否是一个“终端”问题,因为 VS Code 必须打开终端会话才能运行 git?这个设置似乎没有什么区别:
"terminal.integrated.defaultProfile.windows": "Cygwin"
。 这个有希望的答案中的设置也没有:"terminal.integrated.profiles.windows": { "Cygwin": { ...
。我还没有尝试过来自github的这个建议,关于设置"terminal.integrated.profiles.windows": { "bash (MINGW64-MSYS2)": { ...
,尽管它似乎是在谈论使用具有bash风格路径的终端。
或者...我应该使用其他版本的 git 为 Windows 构建,接受反斜杠分隔的路径?
使用 Windows 11、VS Code 1.85.2、git 2.42.1。
更新:如果我手动 git 添加文件,VS Code 足够智能,可以更新文件的状态(从 U 到 A)。我可以在输出窗口中看到 git-show 命令,例如
git show --textconv :4x4word.py
。那么为什么 VS Code 在发出 git-show 命令时是智能的,但在生成 git-add 时却是愚蠢的?