如何更新Git的密码?

我正在使用带有Xcode和Git的BitBucket进行版本控制,最近我更改了所有密码(感谢Adobe!)。

不出所料,我不再能够将我的本地提交推送到我在BitBucket(Authentication failed for 'https://______.git')上的存储库,但我忘记了如何更新我的iMac上的缓存密码。不知何故,我无法在Google或Stack Overflow上找到它,尽管在我看来应该相当简单…

1275501 次浏览

要在macOS上修复此问题,您可以使用

git config --global credential.helper osxkeychain

用户名和密码提示将与您的下一个Git操作(拉、克隆、推送等)一起出现。

对于Windows,它是具有不同参数的相同命令:

git config --global credential.helper wincred

我也遇到了同样的问题,接受的答案对我没有帮助,因为密码没有存储在钥匙串中。我输入:

git pull https://myuser@bitbucket.org/mypath/myrepo.git

然后控制台问我的新密码。

我会尝试在Keychain Access中删除我的帐户,然后再次运行git clone。Git会要求我提供新密码。

如果您是MAC用户,那么您可以从查找器打开KeyChain Access Application,然后查找那里列出的您的帐户。只需单击它并更新您的密码。现在试一试,事情就会到位。

参考链接:通过Keychain Access更新您的凭据

我第一次进入存储库。所以没有定义HEAD

最简单的方法是:

git push -u origin master

然后它会提示输入密码,一旦您输入,它将自动保存,您将能够推送。

其他答案都不适用于MacOS Sierra 10.12.4

这是我必须做的:

git config --global --unset user.password

然后运行您的git命令(例如git push)并重新输入您的用户名和密码。

尝试了所有方法,但都不奏效。然后下面的确实奏效了。

  1. 在上述任何步骤之前,再次锁定和解锁钥匙扣,因为有时它会卡住。
  2. 安装GitHub Desktop-它有帮助。

我可以修改我的git密码的唯一方法是在Windows中转到凭据管理器(Windows Key+键入“凭据”)并编辑Windows凭据通用凭据下的git条目。注:未按字母顺序列出

在使用Git的Windows 10中

删除/更新存储在>>控制面板\所有控制面板项目\凭据管理器中的Windows凭据中的相关凭据

或者,您可以使用搜索栏并搜索“凭据管理器”或“Windows凭据”,这应该返回一个条目来打开该控制面板窗格(至少对于英语用户)。

输入图片描述

在@Imran Javed上面提到的Windows 10中,您可以在以下位置找到通用凭据:

控制面板\所有控制面板项\凭据管理器-->Windows凭据

找到您的git服务器,然后您可以通过单击编辑按钮更新密码。

在此处输入图片描述

这篇文章中,他们以非常简单的方式解释它,但基本上,我们只需要执行git remote set-url origin "https://<yourUserName>@bitbucket.org/<yourRepo>",下次您执行git pullgit push时,您将不得不输入密码。

对于那些正在寻找如何重置对存储库的访问权限的人。以GitHub为例。您可以更改GitHub配置文件密码并撤销配置文件“设置->开发人员设置”中的所有“个人访问令牌”。您还可以选择擦除所有SSH /PGP密钥和OAuth/GitHub应用程序,以确保完全阻止对存储库的访问。因此,任何系统上的所有凭据管理器都将在授权时失败,并提示您输入新的凭据。

运行git config --global --unset user.password后跟任何git命令都会提示您输入用户名和密码。

git config --global --unset user.passwordgit push (will prompt you for the password)git status (will not prompt for password again)

以下步骤可以解决问题……

  1. 转到文件夹~/Library/Application Support/SourceTree
  2. 删除文件{Username}@STAuth-bitbucket.org
  3. 重新启动Sourcetree
  4. 尝试获取,密码文件出现,给出您的新密码
  5. 也可以在终端运行git fetch命令,需要输入密码
  6. 成交

在终端中执行这些步骤:

  1. 删除保存在Mac中的当前密码

    git config --global --unset user.password
  2. Add your new password by using this command, replace with your new password:

    git config --global --add user.password <new_pass>

如果您的凭据存储在凭据助手中,则删除特定主机的持久密码的可移植方法是调用git credential reject

$ git credential rejectprotocol=httpshost=bitbucket.org⏎

$ git credential rejecturl=https://bitbucket.org⏎

之后,要输入新密码,请键入git fetch

在我的Windows机器上,我尝试了@nzrytmn的解决方案,即,控制面板>搜索凭据>选择“管理凭据”>在与我的用户名对应的git选项类别下修改了新凭据。然后,

删除当前密码:

git config --global --unset user.password

添加新密码:

git config --global --add user.password "new_password"

它为我工作。

我能够通过转到Windows中的凭据管理器并删除Windows凭据通用凭据下的所有git条目来更改我的git密码。

在执行git拉取或git推送时,windows会要求提供新的用户/密码本身。

对于MAC用户,使用git GUI(为Sourcetree工作,可能也适用于其他人)。想在Derek的回答中添加一个小注释。最初的建议:

$ git config --global --unset user.password

应该跟在推送//获取但是之后,从GUI完成时可能无法工作。%100工作情况是从控制台执行第一个连续提示触发的git命令。这是一个示例:

  1. 定位到您的git存储库根目录
  2. 输入$ git config --unset user.password
  3. 继续使用您在终端中选择的git推荐,例如:$ git push

然后它会要求你提供新的密码。

这个问题有这样的混乱,因为这个问题太复杂了。首先是MacOS vs. Win10。然后是不同的身份验证机制。

我将在这里开始一个综合的答案,可能需要一些帮助,如果我没有得到帮助,我会继续研究答案,直到它完成,但这需要时间。

Windows 10:|

|-- Run this command. You will be prompted on next push/pull to enter username and password:|      git config --global credential.helper wincred (Thanks to @Andrew Pye)

'macOS:

||-- 1. Using git config to store username and password:|  git config --global --add user.password||---- 1.1 first time entry|  git config --global --add user.password <new_pass>||---- 1.2 password update|  git config --global --unset user.password|  git config --global --add user.password <new_pass>||-- 2. Using keychain:|  git config --global credential.helper osxkeychain||---- 2.1 first time entry|  Terminal will ask you for the username and password. Just enter it, it will be|  stored in keychain from then on.||---- 2.2 password update|  Open keychain, delete the entry for the repository you are trying to use.|  (git remote -v will show you)|  On next use of git push or something that needs permissions, git will ask for|  the credentials, as it can not find them in the keychain anymore.`

您可以在2个地方通过命令行更改密码,以下将编辑凭据以连接存储库

git config --edit

凭据也可以在全局使用全局参数更改,如下所示

 git config --global --add user.password "XXXX"

或设置凭据助手

git config --global credential.helper wincred

但是如果您有repo级别的凭据设置,请使用第一个命令

git config --edit

只需克隆一个现有的存储库,这将提示您输入新凭据:
例如

git clone https://myuser@bitbucket.org/mypath/myrepo.git

(其中https://myuser@bitbucket.org/mypath/myrepo.git是您现有存储库之一的地址)

我的密码在github桌面首选项中很好,但在.git/config文件中错误

对我来说,唯一可行的解决方案是手动编辑文件:.git/config

其中包含这一行:

url = https://user:password@github.com/user/repo.git

将密码更改为GOOD密码,因为它对我来说是一个较旧的密码

如果您使用的是github并启用了2因素身份验证,则需要输入个人访问令牌而不是密码

首先重置您的密码:

git config --global --unset user.password

然后,登录您的github帐户,在右上角,单击设置,然后单击开发人员设置。生成个人访问令牌。复制它。

git push

终端将提示您输入您的用户名:输入您的电子邮件地址。

在密码提示符处,输入个人访问令牌。

对于Mac

如果您有多个远程存储库(Github、Bitucket、作业等)

1)在项目目录下运行

git config --unset user.password

2)运行远程git命令(即。git推或git拉)

Git将提示您重新输入此存储库的user.name和user.password

或者你可以在全球范围内做如果您只有一个远程存储库

git config --global --unset user.password

终端中的命令行选项都不适合我。最终,我只是手动打开钥匙串,在“所有项目”下搜索“git”,在那里找到一个条目并删除它。成功了!下次我尝试从终端中拉取git时,它会提示我添加新证书。

在mac BigSur 11.2.3上我更新了钥匙串中的凭据,然后运行下面的命令。

git credential-osxkeychain erasehost=github.comprotocol=https

我不得不这样做,因为在更改为github的令牌身份验证后,此线程中没有其他解决方案为我工作。github一直在声明未找到存储库。如果这不起作用,请尝试将其与此线程中mac的其他命令结合起来。

只需对您的任何存储库进行git拉取,系统将提示您输入新密码。

其他答案都不适用于MacOS Big Sur 11.3.1

我在Github上启用了双因素身份验证,这使得您在输入用户名和密码时会失败,即使它们是正确的。

这是我必须做的:

git config --global --unset user.password

然后运行您的git命令(例如。git ush)并输入您的用户名。对于密码,您需要生成个人访问令牌。

转到https://github.com/settings/profile选择右侧的Developer Settings。选择Personal Access TokenGenerate new token。复制生成的令牌并将其用作终端的密码。

对于基于新规则的MacOS,从2021年8月13日起使用密码令牌。

我尝试了所有其他基于终端的答案,但没有一个有效。

  1. 直接前往Keychain Access
  2. 搜索github
  3. 右键单击所有与github相关的项目,包括vs-code
  4. 删除所有项目输入图片描述

鉴于2021年8月13日的新令牌认证要求,这可能是您正在寻找的:

  1. 生成一个新的访问令牌
  1. 更新用于访问您的存储库的令牌
git remote remove origingit remote add origin https://[TOKEN]@github.com/[USER]/[REPO]git push

我有同样的问题(在Windows 10上,Git版本2.34.1.windows.1,使用个人访问令牌,由我的组织启用SAML SSO):当我发布git拉取在我的存储库中,我收到了错误消息

错误:'xxx'组织已启用或强制SAML SSO。要访问此存储库,您必须使用带有个人访问令牌的HTTPS远程或者SSHSSH密钥和密码已经授权给这个组织。访问https://docs.github.com/articles/authenticating-to-a-github-organization-with-saml-single-sign-on/了解更多信息。致命:无法从远程存储库读取。

我发现在我的. git/config文件中我有这个:url=git@github.com:myrepo.git

上面的错误消息中的链接使用SAML SSO(个人访问令牌,PAT),所以我将其更改为url=https://www.github.com/myorg/myrepo.git

这一次发出git命令时,如git拉取我收到了一个登录对话框,我可以在其中提供我的PAT令牌,它开始工作。

在macOS上,例如在OSX v.11.6之后,应该转到KeyChain并搜索“git”。并删除相关密钥。它会起作用的。