Remote-Containers VS Code 扩展无法识别 git 存储库

cor*_*zza 7 git docker visual-studio-code vscode-remote-ssh

我在 AWS 实例上有一个存储库。我可以通过 ssh 使用 VS Code 连接到实例并远程打开存储库。该实例上有一个开发容器映像,我用它从 shell 运行代码。我希望本地计算机上的 VS Code 能够远程打开实例上的存储库,但位于从我的开发映像生成的容器内。.devcontainer.json我已经在存储库中设置了这个配置文件:

{
    "image": "mmclassification",
  
    "customizations": {
      "vscode": {
        "extensions": ["dbaeumer.vscode-eslint"]
      }
    },
    "forwardPorts": [3000]
}
Run Code Online (Sandbox Code Playgroud)

看起来效果很好。在远程容器之前,我的 Python 扩展无法遵循导入等操作,现在可以了。但是,VS Code 内的 git 集成停止工作。文件不再突出显示为已修改,当我在 VS Code 中打开源代码控制选项卡时,它表示它不是 git 存储库:

在此输入图像描述

虽然该.git文件夹确实存在,但 VS Code 无法读取它。

仅使用远程 SSH 打开文件夹(即不在容器内)确实具有有效的 git 集成(但 Python 集成是有问题的,因为它没有在开发环境中打开)。

有什么问题?


这是一个类似的问题:在 VS Code 远程容器扩展创建的容器内未检测到 Git 存储库

然而,那里的用户似乎因为worktree他的指令而遇到问题.git/config,而我没有。

cor*_*zza 6

解决办法是:

git config --global --add safe.directory <path/to/repo>
Run Code Online (Sandbox Code Playgroud)

git status这是我从 VS Code 控制台运行后 git 建议的。