Git 安装 VS 2022 后停止工作

Git has stopped working after installing VS 2022

安装新的 Visual Studio 2022 后,内置 Git 支持突然停止工作。对于其中一个项目,我只看到一个子模块而不是主存储库。对于另一个项目,内置 Git 面板根本没有出现,显示一些关于“SccProviderPackage”的神秘消息,指出“发生一个或多个错误”是一个原因...

花了一段时间听从我能找到的关于类似问题的每一条建议,但不幸的是。

最后我决定放弃并尝试 Git 来自 GitHub 的扩展。在那里我终于看到了确切的错误消息(出于某种原因,它在“远程”列表中而不是实际的远程列表中,但至少它在那里)。

原因是 Git 不认为我的存储库目录是“安全的”。所以解决方案是使用以下命令将您的存储库添加到安全目录:

git config --global --add safe.directory /path/to/the/repo

希望这对像我一样会被这个问题困扰的人有所帮助。

在管理员模式下打开 VS 解决了我的问题。希望对您有所帮助。

我将包含工作目录和 .git 文件夹的文件夹的所有者明确设置为我的用户,对其中的所有内容使用继承。

正如@Code-Apprentice 指出的那样,这与 Git v2.35.2 相关联

changes Git’s behavior when looking for a top-level .git directory to stop when its directory traversal changes ownership from the current user.

@mephisto123 意识到,

If you wish to make an exception to this behavior, you can use the new multi-valued safe.directory configuration

更新到 17.1.5 后我遇到了同样的问题。 我检查了本地存储库文件夹和项目(工作树)的所有权。 将所有权设置为我自己解决了问题。

要做到这一点:

  1. Right-click 在包含 working tree.git 文件夹的文件夹上。
  2. 点击Properties
  3. 转到选项卡 Security
  4. 单击 Advanced 按钮。
  5. 为所有者单击 Change
  6. Select 你的 user name.
  7. 检查Replace owner on subcontainers and objects
  8. 单击 Apply 并确定。

然后 VS 可以打开本地存储库。

我注意到包含 .git 的文件夹的所有者已设置为丢失的帐户!所以我将所有者更改为自己,问题就解决了。

这个问题中的所有其他建议都不适合我。

信不信由你,我想我将其追踪到将 VS2022 固定到任务栏并设置为以管理员身份启动(通过右键单击“属性”>“高级”)。一旦我禁用了管理员启动,Git 更改 window 就开始工作了。我可以以管理员身份启动 VS2022,但需要通过右键单击手动执行此操作 运行 作为管理员。