SourceTree一直要求提供Github密码

mzaanser  于 2022-09-21  发布在  Git
关注(0)|答案(5)|浏览(229)

我的组织正在从BitBucket切换到Github进行项目管理。今天,我试着用SourceTree把我们最新的项目从BitBucket转移到Github。我向项目中添加了第二个远程存储库(使用Github上目标存储库的URL),更新了所有内容,然后尝试将代码推送到存储库。弹出一个框,要求输入我的Github帐户的密码。我输入了我的(正确的)密码,然后点击‘确定’,对话框再次弹出。我再次(正确地)输入了我的密码,它做了同样的事情。

我的用户名被正确识别,我的密码正确,我尝试更新SourceTree,因为我听说这是以前版本的问题。这个问题仍然存在。

我正在使用SourceTree 2.3.1

mgdq6dx1

mgdq6dx11#

如果您对GitHub使用双因素身份验证,则需要create a personal access token and use it with SourceTree
要在SourceTree中使用GitHub的双因素身份验证,您只需使用您的访问令牌而不是密码。执行此操作的步骤如下:

1.进入您在GitHub的个人访问令牌设置。
1.点击[生成新令牌]按钮。
1.将令牌命名为描述性的名称。
1.选择要授予此令牌的作用域。
1.点击[生成令牌]按钮。
1.复制令牌并将其用作托管存储库中的密码。

您可以在GitHub's help here上找到有关这方面的更多信息。

**Mac用户:如果您的SourceTree一直要求提供密码,请到终端输入:

git config --global credential.helper osxkeychain
6jygbczu

6jygbczu2#

我使用的是SSH密钥,但SourceTree每次都要求我输入密码。

在Atlassian社区找到的这个解决方案对我很管用:

1.打开终端,进入您的项目目录
1.键入git config credential.helper store
1.类型git pull
1.输入用户名/密码(如果要求)

瞧啊!

envsm3lx

envsm3lx3#

关注@chris answer如果您已经启用了2FA,要在SourceTree中使用Personal Access Token,您需要在SourceTree>首选项中使用此内标识添加您的访问权限,并提供以下信息:

  • 身份验证类型:基本
  • 用户名:{Your-GitHub-Account}
  • 密码:{Your-Personal-Access-Token}
  • 协议:HTTPS

在此之后,您可以克隆您的Github回购。

vpfxa7rd

vpfxa7rd4#

安德鲁·马吉尔给出的解决方案对我有效,复制自来源:link

问题是SourceTree的嵌入式Git客户端附带了Git-Credential-Manager v1.12,它不再与Github一起工作,因为他们在他们的网站上禁用了TLS1.1。您需要获得Git-Credential-Manager v1.14。要做到这一点,最简单的方法是单独安装Git客户端的最新副本,然后将SourceTree切换到使用该副本(“系统Git”),而不是其嵌入式客户端。或者,您可以在您的嵌入式客户端中更新git-redential-Manager,方法是将其文件替换为来自Microsoft的最新版本。

laawzig2

laawzig25#

在更新之后,我遇到了类似的事情;我尝试重新添加我的BitBucket凭据,更改协议等,但都没有成功,直到……

1.我打开我的钥匙链,在密码类别下搜索BitBucket(GitHub可能也是如此,只是搜索GitHub即可)。
1.我发现我的用户有多个访问密钥,所以我关闭了我的存储库,删除了所有“应用程序密码”类型的密钥,打开SourceTree首选项>帐户>删除了我的帐户并重新添加了它(像往常一样登录-我使用的是基本的HTTPS)。
1.Key Chain请求许可保存密码,我同意了,现在我只看到一个应用密码的Key。

我从repo浏览器打开了我的存储库,嘿,再也没有密码弹出了!

这件事让我烦了整整一个星期!如果这对你有帮助,你现在可以和我跳支舞了:)

相关问题