BitBucket:您正在通过 HTTPS 使用 Git 的帐户密码

BitBucket: You are using an account password for Git over HTTPS

今天我在 MacOS 上使用 Git + BitBucket 向 BitBucket 推送新分支时收到以下消息。

您正在使用 Git 通过 HTTPS 的帐户密码。

从 2022 年 3 月 1 日开始,用户需要远程使用应用密码:Git 通过 HTTPS。为避免任何中断,请将 Git 客户端 remote: 中使用的密码更改为应用程序密码。请注意,这些凭据可能已自动存储在您的 Git 客户端 and/or 凭据管理器中,例如 Git 凭据管理器 (GCM)。'

就我而言,我是通过 HTTPS 而不是通过 SSH 使用 BitBucket。所以我不得不改变它。

  1. 按照 this guide 创建并添加新的 SSH 密钥。
  2. 按照 this guide 从 HTTPS 切换到 SSH。

不相关且可选:

当您执行此安全相关任务时,请在您的 BitBucket 安全设置中激活 2FA。

Windows11,git在命令行

我一直在使用我的 bitbucket 密码进​​行身份验证。

我只知道基本的 git 命令。 我设置了一个应用程序密码。 这部分的文档很好。 https://support.atlassian.com/bitbucket-cloud/docs/app-passwords/

正在检查您的帐户详细信息

git config user.name
git config user.email
git config user.password

git config --global user.name
git config --global user.email
git config --global user.password

更改值

e.g. 
git config user.name "New name"
gti config --global "New name"

尽管这些值看起来正确,但我仍然遇到问题。 我在执行

时仍然收到密码警告
git push origin main

由于我的本地存储库与我的主 Bitlocker 存储库没有显着差异,我只是 克隆了存储库的另一个副本 from Bitlocker。 这解决了问题

详细步骤

我将本地存储库移至新文件夹 x_reponame

已创建文件夹 reponame

在 Bitbucket 网站上,我转到存储库并选择右上角的“克隆”按钮。 这为您提供了将存储库克隆到我的本地存储库的正确命令。

从我的本地终端 git 克隆 https://.....

添加文件和提交后

git push origin main

不再给我密码警告。

如果您想通过 HTTPS 使用 Git:

首先,按照此处所述在 bitbucket 上创建应用密码并将其保存在安全的地方:

https://bitbucket.org/blog/deprecating-atlassian-account-password-for-bitbucket-api-and-git-activity

二、清除凭证:

git config --unset credential.helper

然后你可以执行任何 git 命令,当需要你的密码时,你可以使用你的应用程序密码而不是你的 bitbucket 帐户密码。

Ex : git fetch

对于 windows 用户,要继续通过 HTTPS 使用 GIT:

  1. 设置应用程序密码 - https://bitbucket.org/blog/deprecating-atlassian-account-password-for-bitbucket-api-and-git-activity#How-to-create-an-app-password。确保存储密码
  2. 从“开始”菜单搜索并打开 Credential Manager
  3. 更改为 Windows Credential 选项卡。
  4. 在通用凭据下,您应该能够找到 git:https://bitbucket.org。 select 编辑选项并用新创建的密码替换密码。