当前位置: 首页 > 知识库问答 >
问题:

启用2FA后Git身份验证失败

仲孙鸣
2023-03-14

我刚刚启用了2FA(我想不出我做过任何其他更改),git要求输入我的用户名和密码。我两者都提供了,但它们“错了”。我在这里尝试了许多解决方案:Git push需要用户名和密码,但这不起作用。特别是,当从https切换到ssh时,ssh密钥提供

权限被拒绝(公钥)。致命:无法从远程存储库读取。

$ git push
warning: push.default is unset; its implicit value is changing in
Git 2.0 from 'matching' to 'simple'. To squelch this message
and maintain the current behavior after the default changes, use:

  git config --global push.default matching

To squelch this message and adopt the new behavior now, use:

  git config --global push.default simple

See 'git help config' and search for 'push.default' for further information.
(the 'simple' mode was introduced in Git 1.7.11. Use the similar mode
'current' instead of 'simple' if you sometimes use older versions of Git)

Username for 'https://github.com': **********
Password for 'https://mlbileschi@github.com': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/mlbileschi/scala.git/'

有什么建议吗?

共有2个答案

仉姚石
2023-03-14

>

在命令行中将此访问令牌用作密码。

您可以通过将用户名包含到项目远程url中来持久化用户名。其中一种方法是编辑。git/configurl行修改为以下格式:

url=https://YOUR_USERNAME_HERE@github。com/所有者/回购。git

您可以通过运行this一次来保存您的密码:

$git配置凭据。助手存储

然后您未来的git密码将存储在~/。git凭证,纯文本格式,使用https://user:PlaintextPassword@例如。com

以明文形式存储密码通常被认为是一种安全风险。但是在2FA的情况下,凭据不是您的真实密码,它是一个随机生成的字符串。因此,它与使用无密码的ssh私钥一样安全。CAVEAT:请记住,如果您碰巧在这台机器上使用了另一个没有2FA的git帐户,这些真实密码也将以明文形式存储。

PS:或者,您可以选择使用基于ssh的登录,使用受密码短语保护的ssh私钥,这样会更安全、更不方便,但这超出了本答案的范围。

颜均
2023-03-14

您需要生成一个访问令牌。您可以通过转到设置页面来创建一个。

在命令行中将此访问令牌用作密码。

 类似资料:
  • 尝试访问私有公司 tfs。他们通过向Windows用户(域\登录)授予适当的权限来授予我访问权限。 我可以很好地访问tfs的web界面,浏览存储库和其他东西。 但当我试图逃跑 它失败了 尝试与家用PC没有公司网络的东西 - 同样的错误。 在PowerShell、Git Bash、Clone via VisualStudio中尝试过-同样的错误。 SSH关闭(给定请求超时)。 网络 企业助手试图帮助

  • 我已经使用GitHub有一段时间了,我对,和都很好,到目前为止没有任何问题。突然我有一个错误,说: 致命:身份验证失败 在终端中,我克隆了一个存储库,处理了一个文件,然后使用将文件添加到提交日志中,当我执行时,它工作得很好。最后,要求输入用户名和密码。我把它们正确地放进去,每次我这样做,它都会说同样的错误。 这个问题的原因是什么,我该如何解决? 是:

  • 我使用Github已经有一段时间了,使用、和都很好,到目前为止没有任何问题。突然我有一个错误说: 致命:身份验证失败 在终端中,我克隆了一个存储库,处理了一个文件,然后使用将文件添加到提交日志中,当我执行时,它工作得很好。最后,询问用户名和密码。我把那些正确地放进去,每次我这样做,它说同样的错误。 有没有人知道这个问题的原因是什么,我该怎么修复它? 的内容是:

  • Tweepy API请求twitter return me Twitter错误响应:状态代码=401。 这是我的实际代码: 我曾试图用tweepy软件包删除推文,并获得了所有必需的密钥。镊子包装不起作用吗?有人能帮我解决这个问题吗。

  • 我有一个API在Apache堆栈上运行,使用Java。我继承了一个遗留代码库,需要找到这个错误来自哪里显然是上一个开发人员构建了一个不能工作的特性,这就是错误所在,但没有更多信息。它使用Drupal webservice模块,发送调用的代码如下所示 我可以从哪里开始寻找这个错误,或者它可能意味着什么,你有什么想法吗? 完整的堆栈跟踪如下所示::: 用户失败:null。java.lang.Unsup

  • 我们正在配置spring云配置服务器,下面是我的应用程序属性的外观: 我可以登录到github url,即https://github.com/myorganization/config-store.git使用用户名MyUser和密码MyPassword作为上述属性,但当我试图启动我的配置服务器使用:./mvnw sping-boot: run我得到以下错误: 我已经尝试了很多东西,但现在没有任何