我可以在TortoiseGit中使用GitHub的双因素身份验证吗?

时间:2014-02-19 20:54:28

标签: git github tortoisegit

我们喜欢TortoiseGit,并希望利用GitHub's 2-Factor Authentication ...但这两者似乎并不想一起工作。

有没有人为此制定解决方案?

6 个答案:

答案 0 :(得分:24)

要赞美Cupcake's answer,请在使用TortoiseGit时使用GitHub.com中的个人访问令牌功能:

  1. Set up 2-step auth

  2. Set up a personal access token - 记下生成的令牌(使用生成的令牌旁边的Copy to clipboard按钮)。

  3. 设置TortoiseGit以记住您的密码as detailed here

  4. 现在在GitHub.com上执行拉取操作,输入您的用户名,但不要使用普通密码,而是使用步骤2中生成的令牌。

  5. 在GitHub.com上执行另一次拉取操作,以确保记住该令牌。

答案 1 :(得分:16)

GitHub blog post about 2-Factor Authentication提到您可以生成“个人访问令牌”,可以在启用双因素身份验证时用来代替密码:

enter image description here

我不确定它是否真的可以与TortoiseGit一起使用,但也许你可以尝试一下?您可以在Authorized applications settings page

生成访问令牌

enter image description here

答案 2 :(得分:2)

在 github 中创建个人访问令牌后(请参阅:https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token),转到存储库的 TortoiseGit 设置,然后转到本地配置,如下所示:

enter image description here

之后,编辑存储库的URL,格式为github username:access_token@rest/of/the/url.git,如下所示:

enter image description here

为我工作。能够毫无问题地推送代码。

答案 3 :(得分:1)

如果有人遇到同样的问题 - 使用TortoiseGit的访问权限一般工作,虽然由于某种原因我不能强迫它使用正常的身份验证提示,所以我必须做git clone https://ghusername:accesstoken@github.com/repo.git

答案 4 :(得分:0)

你必须生成访问令牌以在Github中使用tortoise进行双因素身份验证来提取/推送代码。使用此令牌作为密码。

以下是其他步骤 -

https://help.github.com/articles/creating-an-access-token-for-command-line-use/

https://github.com/settings/tokens

答案 5 :(得分:0)

这似乎已经存在了一段时间了,多亏了上面“ Pawel Gorczynski's”的回答,我才设法解决了这个问题。

在特定的存储库中,打开“〜/ repo / .git / config”文件并创建如下一行:

[credential "https://GHUserName:GHPersonalAccessToken@github.com/GHUserName/GHRepository"]

GHUserName =您在GitHub上的用户名,而不是您的电子邮件。
GHPersonalAccessToken =在https://github.com/settings/tokens生成的整个令牌字符串
GHRepository =为此访问令牌创建的存储库的名称,请注意“ .git”已被排除。

您可以在'〜/ repo / .git / config'中找到或创建配置文件,该配置文件没有扩展名,应该已经存在。