Git凭据助手-更新密码

Git凭据助手-更新密码,git,github,windows-7-x64,change-password,git-credential-winstore,Git,Github,Windows 7 X64,Change Password,Git Credential Winstore,我目前正在通过HTTPS使用GitHub,并在Windows7上安装了最新版本的Git(1.9.0)以及Git凭据帮助程序 在设置我的环境时,我告诉git凭据永久记住我的用户名和密码 我最近通过网站更新了我的GitHub密码,现在我不能再推/拉/取等了 如何在Windows 7上的git credentials helper上更新密码?在我更改密码后第一次尝试git fetch时,我被告知我的用户名/密码组合无效。这是正确的,因为git凭证助手缓存了我的旧值 但是,在重新启动终端/命令提示符后,

我目前正在通过HTTPS使用GitHub,并在Windows7上安装了最新版本的Git(1.9.0)以及Git凭据帮助程序

在设置我的环境时,我告诉git凭据永久记住我的用户名和密码

我最近通过网站更新了我的GitHub密码,现在我不能再推/拉/取等了


如何在Windows 7上的git credentials helper上更新密码?

在我更改密码后第一次尝试git fetch时,我被告知我的用户名/密码组合无效。这是正确的,因为git凭证助手缓存了我的旧值

但是,在重新启动终端/命令提示符后,我尝试了另一个git fetch,这次凭证助手提示我输入GitHub用户名和密码

我怀疑最初失败的Git fetch请求与重新启动终端/命令提示符相结合,为我解决了这个问题


我希望这个答案能帮助将来处于类似地位的任何人

只需安装git credential winstore的目录中的
cd
。如果您不知道在哪里,只需在Git Bash中运行以下命令:

cat ~/.gitconfig
它应该打印如下内容:

[credential]
    helper = !'C:\\ProgramFile\\GitCredStore\\git-credential-winstore.exe'
在本例中,您的存储库是C:\ProgramFile\GitCredStore。使用Git Bash或Windows命令进入此文件夹后,只需键入:

git-credential-winstore.exe erase
host=github.com
protocol=https

不要忘记在使用Git命令找到您正在使用的版本后按两次Enter键。如果您的版本高于1.7.10,则只需使用以下命令:

git config --global credential.helper wincred
然后执行
git fetch
,然后提示更新密码


现在,它不会在Git中多次提示输入密码。

使用Windows、Linux和MacOS的命令行解决方案

如果您已在GitHub服务器上更新了GitHub密码,则在第一次尝试使用
git fetch/pull/push
命令时,它会生成身份验证失败消息

再次执行相同的
git fetch/pull/push
命令,它会提示输入凭据(用户名和密码)。输入GitHub服务器的用户名和新更新的密码,登录将成功


甚至我也有这个问题,我执行了上述步骤并完成了

这些答案都没有解决我的Git凭证问题。如果有人需要它,下面是它的工作原理(我在Windows8.1上使用Git1.9)

要更新您的凭据,请转到“控制面板”→ 凭证管理器→ 通用凭证。查找与Git帐户相关的凭据,并对其进行编辑以使用更新的密码

参考:

请注意,要使用Windows凭据管理器for Git,您需要如下配置凭据帮助器:

git config --global credential.helper wincred
如果您有多个GitHub帐户用于不同的存储库,那么您应该配置凭据以使用完整的存储库路径(而不仅仅是默认的域):


在我看来,这里的答案已经过时了。对于我来说,在Windows10和Git 2.15.0下,这就完成了任务:

git credential reject
protocol=https
host=github.com
<Empty line here>
git凭证拒绝
协议=https
host=github.com
然后设置新的用户名和密码:

git credential fill
protocol=https
host=github.com
<empty line here>
git凭证填充
协议=https
host=github.com

在此之后,如果凭据现在在所需的目标主机上工作,我们应该使用(步骤4)中提到的
git credential approve
,告诉凭据帮助人员将凭据标记为已批准,并在将来的连接中重新使用它们。

如果您是Windows用户,您可以在凭据管理器中删除或更新凭据

在Windows 10中,转到以下路径:

控制面板→ 所有控制面板项目→ 凭证管理器

或者在“开始”菜单的“搜索窗口”部分中搜索“凭证管理器”

然后从凭据管理器中选择“Windows凭据”

凭据管理器将在“通用凭据”下显示许多项目,包括outlook和GitHub存储库


单击Git:右侧的下拉箭头,它将显示要编辑和删除的选项。如果删除,则下次提取或提取时凭证弹出窗口将出现。或者你可以直接在那里编辑凭证。

FWIW,我也遇到了同样的问题(我的老板也遇到了,所以问题变得更加严重)

即时解决方案是删除或修复Windows凭据管理器中的Git条目。您可能很难在本地化的Windows版本中找到它,但幸运的是,您可以使用
control-keymgr.dll
control/name-Microsoft.CredentialManager
(或者
rundll32.exe-keymgr.dll,KRShowKeyMgr
,如果您喜欢经典外观,则可以从旧的Windows+R运行对话框启动它)。或者将其放入同事的批处理文件中:
cmdkey/delete:git:http://your.git.server.company.com

在微软的Git Credential Manager中,这一问题最早可能在2019年初得到解决(所以不要屏住呼吸)


更新(2020-09-30):GCM4W似乎或多或少被抛弃了(上一个版本是一年多前发布的,自那以后,只有一个主版本被命名为“重新创建GCM徽标的可伸缩版本”)。但不要失望,随着微软现在进入核心,有一个闪亮的新项目叫做,它似乎能正确处理密码更改。它可以独立安装(应自动激活,否则使用git config--system credential.helper manager core激活),但也包含在当前的git for Windows 2.28.0中。有关它的更多信息,请参阅。

当前的解决方案都不适合我使用git bash 2.26.2。 如果您使用的是windows凭据管理器,则在任何情况下都可以使用此功能。

O
git credential fill
protocol=https
host=github.com
<empty line here>