我严格遵守了这些说明,包括关于密码缓存的部分。看起来指令是错误的,因为每次我git push origin master都会得到这个错误:

git: 'credential-cache' is not a git command. See 'get --help'.

... 这时我必须输入我的用户名和密码。这样做之后,我再次看到相同的错误消息,然后是git push的输出。

下面是我的.gitconfig文件的内容:

[user]
    name = myusername
    email = myusername@myemaildomain.com
[credential]
    helper = cache

要清楚,在我安装Git并运行Git Bash后,下面是我输入的内容:

git config --global user.name "myusername"
git config --global user.email "myusername@myemaildomain.com"
git config --global credential.helper cache

请帮助。这太令人沮丧了!


当前回答

我通过从特定项目的配置中删除凭据部分来修复这个问题:

只需输入:git config -e 在编辑器中,我删除了整个部分[credential] helper = cache。

这就消除了恼人的信息:

'credential-cache'不是Git命令。参见'git -help'。

其他回答

我在一个博客上发现:

这个[git-credential-cache]在Windows系统中不起作用,因为git-credential-cache通过Unix套接字进行通信。

Git for Windows

因为msysgit已经被Git for Windows所取代,所以使用Git for Windows现在是最简单的选择。某些版本的Git for Windows安装程序(例如2.7.4)在安装过程中有一个复选框来启用Git凭据管理器。以下是截图:

还在使用msysgit吗?适用于msysgit 1.8.1及以上版本

在msysgit 1.8.1中添加了wincred helper。使用方法如下:

git config --global credential.helper wincred

对于1.8.1以上版本的msysgit

首先,下载git-credential-winstore并将其安装到git bin目录中。

接下来,确保包含git的目录。cmd在Path环境变量中。默认目录在64位系统上是C:\Program Files (x86)\Git\cmd,在32位系统上是C:\Program Files\Git\cmd。一个简单的测试方法是启动命令提示符并输入git。如果您没有得到git命令列表,那么它没有正确设置。

最后,启动命令提示符并输入:

git config --global credential.helper winstore

或者你可以手动编辑你的.gitconfig文件:

[credential]
    helper = winstore

一旦你完成了这些,你就可以通过Windows凭据管理器来管理你的git凭据,你可以通过Windows控制面板拉出凭据管理器。

对于git版本>=1.7.10(使用git——version检查),使用以下方法(参考):

窗口:

git config --global credential.helper wincred

Mac:

git config --global credential.helper osxkeychain

在我的案例中,这个命令解决了这个问题:

git config --global credential.helper manager-core --replace-all

使用新的网络核心凭据管理器。

我们的Azure DevOps存储库在域名更改后也遇到了同样的问题,即从@xy.com更改为@xyz.com。为了解决这个问题,我们生成了一个新的个人访问令牌,具有以下权限:

代码:读写 包装:阅读

然后我们打开Windows凭据管理器,添加一个新的通用Windows凭据,详细信息如下:

Internet或网络地址:"git:{projectname}@dev.azure.com/{projectname}" -或者你可以在这里使用你的git存储库名称。 用户名:“个人访问令牌” 密码:{生成的个人访问令牌}

后来我们所有的git操作都恢复正常了。希望这能帮助到其他人!

我也得到类似的错误,当我试图使用命令“git拉”从主分支。

Error: "git: 'credential-manager' is not a git command. See 'git --help'." 

我执行下面两个命令,问题得到解决。

$ git config --global --unset credential.helper
$ git config credential.helper store