我使用BitBucket与Xcode和Git进行版本控制,最近我更改了我所有的密码(感谢Adobe!)
不出意外,我不能再把我的本地提交推到我在BitBucket上的存储库(“https://______.git”认证失败),但我忘记了如何更新iMac上缓存的密码。不知何故,我一直无法在谷歌或Stack Overflow上找到它,尽管在我看来它应该是相当直接的…
我使用BitBucket与Xcode和Git进行版本控制,最近我更改了我所有的密码(感谢Adobe!)
不出意外,我不能再把我的本地提交推到我在BitBucket上的存储库(“https://______.git”认证失败),但我忘记了如何更新iMac上缓存的密码。不知何故,我一直无法在谷歌或Stack Overflow上找到它,尽管在我看来它应该是相当直接的…
当前回答
对于那些正在寻找如何重置对存储库的访问的人。以GitHub为例。您可以更改您的GitHub配置文件密码,并在配置文件的“设置->开发人员设置”中撤销所有“个人访问令牌”。此外,您还可以选择擦除所有SSH/PGP密钥和OAuth/GitHub应用程序,以确保对存储库的访问完全被阻止。因此,任何系统上的所有凭据管理器在授权时都会失败,并提示您输入新的凭据。
其他回答
我会尝试删除我的帐户在钥匙串访问,然后运行git克隆再次。Git会问我要一个新密码。
在Windows 10中使用Git
删除/更新存储在>>控制面板\所有控制面板项\凭证管理器中的Windows凭证中的相关凭证
或者你可以使用搜索栏搜索“CredentialManager”或“Windows Credentials”,这应该会返回一个打开控制面板窗格的条目(至少对于英语用户来说)。
运行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)
只需从任何存储库中提取git,系统将提示您输入新密码。
这个问题很混乱,因为这个问题太复杂了。首先是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.
`