启用 2 因素身份验证时,如何通过 HTTPS 签出私有 github 存储库?

Posted

技术标签:

【中文标题】启用 2 因素身份验证时,如何通过 HTTPS 签出私有 github 存储库?【英文标题】:How to checkout a private github repository via HTTPS when 2-factor authentication is on? 【发布时间】:2017-10-12 15:18:10 【问题描述】:

在工作和我自己的电脑上,我通常使用带有 ssh 密钥的 github。 我还通过短信安装了 2 因素身份验证。 一切正常。

但是当我在另一台没有 ssh 密钥的计算机上时,我当然无法通过

从我的(私人)存储库中签出
git clone git@github.com:joergi/myproject.git

但是当我切换到 HTTPS 版本时,我无法通过结帐

git clone https://github.com/joergi/myproject.git
Cloning into 'myproject'...
Username for 'https://github.com': joergi
Password for 'https://joergi@github.com': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/joergi/myproject.git/'

用户名和密码 100% 正确。

在激活 2 因素身份验证时,有什么方法可以使用 HTTPS 吗?

【问题讨论】:

我也遇到了这个问题。我最终只是将它用作 ssh。这是重复的***.com/questions/2505096/… 但我不想在别人的计算机上拥有我的 repo 的 ssh 密钥。没有别的办法? @LelandBarton - 它并不是真正的重复。这家伙使用了错误的(只读)网址 - 我在问是否通常可以通过 HTTPS 结帐。 我认为这个问题还有更多内容。 【参考方案1】:

这里是来自github 的关于两因素身份验证如何表现的文档。它在命令行上讨论了 https 存储库。您可以生成一个personal access token 并使用它来登录。

安全的代价是不便。您也可以暂时禁用两个因素身份验证。

【讨论】:

我仍然使用我的 GITHUB 帐户。此人根本没有 github 帐户。我想在不添加另一个 ssh 密钥的情况下查看我的私人仓库。就像使用 2-way-authentification 结帐或类似的东西

以上是关于启用 2 因素身份验证时,如何通过 HTTPS 签出私有 github 存储库?的主要内容,如果未能解决你的问题,请参考以下文章

为 Gmail 启用两因素身份验证时发送电子邮件失败

重置密码且未配置两因素设备时如何获得两因素身份验证

如何在 asp.net C# 中使用启用两因素身份验证的 office365 电子邮件帐户发送电子邮件?

将远程提交推送到 github 并启用两因素身份验证

在 2 因素身份验证中使用啥 HTTP 状态

新用户首次登录时强制进行 2 因素身份验证 .NET Core