我在Windows 10机器上运行GitforWindows2.37.1.windows.1非常好。多年来我一直在那台旧机器上更新Git for Windows。我的~/gitconfig文件包含:
[credential]
helper = manager我在一台新机器上安装了一个干净的Windows 10,并在新机器上运行完全相同的可执行文件来安装Git。git --version正确地显示了git version 2.37.1.windows.1。
我试图访问Bitbucket安全存储库,它弹出了一个身份验证对话框(这并不奇怪),但是在命令行中它说:
git: 'credential-manager' is not a git command. See 'git --help'.
The most similar command is
credential-manager-core我意识到有几个堆栈溢出问题,其中一个说要删除[credential]部分,一个说要将manager更改为manager-core,还有一个说要运行git credential-manager-core configure等等。
但这不是我的主要问题。当然,我可以花半天时间尝试这些不同的命令和组合,试图让Git再次工作。
这里我的核心问题是:如果相同版本的Git在旧机器上工作,那么为什么安装在新机器上的相同版本的Git不能使用完全相同的.gitconfig呢?有什么不同吗?当我在新机器上运行Git安装可执行文件时,没有配置什么?
发布于 2022-08-10 21:03:09
我要尝试一下到底发生了什么。如果我在每台机器上运行git credential-manager-core --version,它会返回相同的结果,因此Git凭证管理器Core似乎确实安装在这两个系统上。但是在阅读Git认证经理核心:建立一个通用的认证体验时,似乎在Git出现之前,只有Git。
所以我猜在旧机器上,Git最初使用的是Git Manager。最后,Git的更新版本更喜欢Git,但是他们继续使用Git (它可能是通过以前的Git版本安装在我的旧机器上),因为它在.gitconfig中仍然是这样设置的。
但是在新机器上,最新的Git版本默认只安装了,而不是Git。由于我的.gitconfig仍然引用旧的Git,它找不到它,因为它还没有安装(而且安装程序认为没有理由安装它,因为安装程序可能没有仔细阅读.gitconfig )。
我通过将manager改为manager-core in .gitconfig来解决这个问题
[credential]
helper = manager-corehttps://stackoverflow.com/questions/73312458
复制相似问题