我使用BitBucket与Xcode和Git进行版本控制,最近我更改了我所有的密码(感谢Adobe!)
不出意外,我不能再把我的本地提交推到我在BitBucket上的存储库(“https://______.git”认证失败),但我忘记了如何更新iMac上缓存的密码。不知何故,我一直无法在谷歌或Stack Overflow上找到它,尽管在我看来它应该是相当直接的…
我使用BitBucket与Xcode和Git进行版本控制,最近我更改了我所有的密码(感谢Adobe!)
不出意外,我不能再把我的本地提交推到我在BitBucket上的存储库(“https://______.git”认证失败),但我忘记了如何更新iMac上缓存的密码。不知何故,我一直无法在谷歌或Stack Overflow上找到它,尽管在我看来它应该是相当直接的…
要在macOS上修复此问题,可以使用
git config --global credential.helper osxkeychain
您的下一个Git操作(拉、克隆、推等)将出现用户名和密码提示。
对于Windows,它是相同的命令,但参数不同:
git config --global credential.helper wincred
我遇到了同样的问题,接受的答案没有帮助我,因为密码没有存储在钥匙链中。我输入:
git pull https://myuser@bitbucket.org/mypath/myrepo.git
然后控制台要求我输入新密码。
如果你是MAC用户,那么你可以从finder打开KeyChain访问应用程序,然后寻找你列出的帐户。只需点击它并更新你的密码。 现在试一试,一切都会迎刃而解。
链接参考:更新您的凭证通过钥匙链访问
这是我第一次推进仓库。所以没有定义HEAD。
最简单的方法是:
git push -u origin master
然后它会提示输入密码,一旦你输入密码,它就会自动保存,你就可以按了。
在MacOS Sierra 10.12.4上,其他答案都不适用
以下是我必须做的:
git config --global --unset user.password
然后运行你的git命令(例如git push)并重新输入你的用户名和密码。
在Windows 10中使用Git
删除/更新存储在>>控制面板\所有控制面板项\凭证管理器中的Windows凭证中的相关凭证
或者你可以使用搜索栏搜索“CredentialManager”或“Windows Credentials”,这应该会返回一个打开控制面板窗格的条目(至少对于英语用户来说)。
在windows 10中,正如上面提到的@Imran Javed,你可以在下面找到通用凭据:
控制面板\所有控制面板项\凭证管理器—> Windows凭证
找到你的git服务器,然后你可以通过点击编辑按钮更新密码。
在这篇文章中,他们用一种非常简单的方式解释了它,但基本上,我们只需要执行一个git远程set-url origin“https://<yourUserName>@bitbucket.org/<yourRepo>”,下次你做git拉或git推时,你必须输入你的密码。
对于那些正在寻找如何重置对存储库的访问的人。以GitHub为例。您可以更改您的GitHub配置文件密码,并在配置文件的“设置->开发人员设置”中撤销所有“个人访问令牌”。此外,您还可以选择擦除所有SSH/PGP密钥和OAuth/GitHub应用程序,以确保对存储库的访问完全被阻止。因此,任何系统上的所有凭据管理器在授权时都会失败,并提示您输入新的凭据。
运行git config——global——unset user。Password后跟任何git命令都会提示您输入用户名和密码。
git config --global --unset user.password
git push (will prompt you for the password)
git status (will not prompt for password again)
以下步骤可以解决问题.....
进入~/Library/Application Support/SourceTree文件夹 删除文件{Username}@STAuth-bitbucket.org 重启Sourcetree 尝试获取,密码文件出现,给你的新密码 也可以在终端运行git获取命令,需要输入密码 完成
在Terminal执行以下步骤:
删除保存在Mac中的当前密码 Git配置——global——取消设置user.password 使用此命令添加您的新密码,替换为您的新密码: Git配置——global——添加用户。密码< new_pass >
如果你的凭据存储在凭据助手中,移除特定主机的密码持久化的可移植方法是调用git credential reject:
$ git credential reject
protocol=https
host=bitbucket.org
⏎
or
$ git credential reject
url=https://bitbucket.org
⏎
然后,输入git fetch来输入新密码。
在我的Windows机器上,我尝试了@nzrytmn的解决方案,即, 控制面板>搜索凭据>选择“ManageCredentials”>在对应我的用户名的git选项类别下修改了新的凭据。 然后,
删除当前密码:
git config --global --unset user.password
新增新密码:
git config --global --add user.password "new_password"
这招对我很管用。
对于MAC用户,使用git GUI(适用于Sourcetree,也可能适用于其他用户)。我想对德里克的回答补充一点意见。原建议:
$ git config --global --unset user.password
应该跟着一个推/拉/取,但它可能不会工作时,从GUI。%100的工作情况是在控制台执行第一个连续的提示触发git命令。这里有一个例子:
定位到git存储库根目录 输入$ git config——unset user.password 在终端中执行您选择的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个地方通过命令行更改密码,下面将编辑凭证以连接repo
git config --edit
凭据也可以在全局中使用如下所示的全局参数进行更改
git config --global --add user.password "XXXX"
或将凭据助手设置为
git config --global credential.helper wincred
但如果你有回购级别的凭据设置使用第一个命令
git config --edit
只需克隆一个你现有的回购,这将提示你新的凭证: 如。
git clone https://myuser@bitbucket.org/mypath/myrepo.git
(其中https://myuser@bitbucket.org/mypath/myrepo.git是您现有的一个回购平台的地址)
我的密码在github桌面首选项中是正确的,但在.git/配置文件中是错误的
对我来说,唯一可行的解决方案是手动编辑文件: . /配置
包含这一行:
url = https://user:password@github.com/user/repo.git
将密码更改为GOOD密码,因为它是我的旧密码
如果您正在使用github并启用了2因素身份验证,则需要输入个人访问令牌而不是密码
首先重置密码:
Git配置——global——取消设置user.password
然后,登录到你的github账户,在右上角,点击设置,然后是开发者设置。生成一个个人访问令牌。复制它。
git push
终端将提示您输入您的用户名:输入您的电子邮件地址。
在密码提示符下,输入个人访问令牌。
对于Mac
如果你有多个远程存储库(Github, Bitbucket, Job等)
1)在项目目录下运行
git config --unset user.password
2)执行远程git命令。Git推还是Git拉)
Git将提示您重新输入user.name和user。此存储库的密码
如果只有一个远程存储库,也可以全局执行
git config --global --unset user.password
终端内的命令行选项对我都不起作用。最终,我只是手动打开钥匙链,在“所有项目”下搜索“git”,在那里找到一个条目并删除了它。成功了!下一次我试着从终端机拉一个git,它提示我新的信用。
在mac BigSur 11.2.3 我更新了密钥链中的凭据,然后运行下面的命令。
git credential-osxkeychain erase
host=github.com
protocol=https
我不得不这样做,因为在这个线程中没有其他解决方案为我更改为github令牌认证后工作。Github一直说仓库没有找到。 如果这不起作用,尝试将此与此线程中mac的其他命令结合起来。
在MacOS Big Sur 11.3.1上,其他答案都不适合我
我在Github上启用了双因素身份验证,这使得你在输入用户名和密码时即使他们是正确的也会失败。
以下是我必须做的:
Git配置——global——取消设置user.password
然后运行你的git命令(例如git push)并输入你的用户名。 对于密码,您需要生成一个个人访问令牌。
访问https://github.com/settings/profile,选择右边的开发者设置。Select Personal Access Token生成新的Token。复制生成的令牌,并将其作为终端的密码。
基于新规则的MacOS从2021年8月13日起使用密码令牌。
我尝试了所有其他基于终端的答案,但没有一个有效。
只需前往钥匙链访问 搜索github 右键点击所有github相关项目,包括vs-code, 删除所有项目
考虑到2021年8月13日起新的令牌身份验证要求,这可能就是你想要的:
生成一个新的访问令牌
更新用于访问您的回购的令牌
git remote remove origin
git remote add origin https://[TOKEN]@github.com/[USER]/[REPO]
git push
我也遇到了同样的问题(在Windows 10上,Git版本2.34.1.windows。1,使用个人访问令牌与SAML单点登录启用我的组织): 当我发布 git拉 在我的回购,我收到了错误信息
错误:xxx组织已经启用或强制SAML单点登录。访问 此存储库,您必须使用带有个人访问令牌的HTTPS远程 或SSH,使用SSH密钥和密码 这是本组织授权的。访问 https://docs.github.com/articles/authenticating-to-a-github-organization-with-saml-single-sign-on/获取更多信息。 无法从远程存储库读取。
我发现在我的.git/config文件中我有这样的: Url = git@github.com:myorg/myrepo.git
上面错误消息中的链接统计使用SAML SSO(个人访问令牌,PAT),所以我将其更改为 Url = https://www.github.com/myorg/myrepo.git
这一次在发出git命令时 git拉 我看到了一个登录对话框,我可以在其中提供我的PAT令牌,它开始工作。