Git Clone from GitHub over https with two-factor authentication

kx5bkwkv  于 2023-08-01  发布在  Git
关注(0)|答案(8)|浏览(131)

我最近开始在GitHub上使用双因素身份验证,现在我无法以通常的方式在私有仓库上通过https使用git:

peter@computer:~$ git clone https://github.com/[...]/MyPrivateRepo
Cloning into 'MyPrivateRepo'...
Username for 'https://github.com': [...]
Password for 'https://[...]@github.com': 
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/[...]/MyPrivateRepo/'

字符串
如果我禁用双因素身份验证,我可以像以前一样使用它:

peter@computer:~$ git clone https://github.com/[...]/MyPrivateRepo
Cloning into 'MyPrivateRepo'...
Username for 'https://github.com': [...]
Password for 'https://[...]@github.com': 
remote: Counting objects: 147, done.
remote: Total 147 (delta 0), reused 0 (delta 0), pack-reused 147
Receiving objects: 100% (147/147), 22.70 KiB | 0 bytes/s, done.
Resolving deltas: 100% (87/87), done.
Checking connectivity... done.


我知道我可以使用SSH并且一切正常,但是有没有一种方法可以保持双因素身份验证,同时仍然能够通过HTTPS使用GitHub,例如通过发送我的请求的auth令牌?

fdbelqdn

fdbelqdn1#

了解如何解决这个问题在这里:
https://github.com/blog/1614-two-factor-authentication#how-does-it-work-for-command-line-git

命令行Git是如何工作的?

如果您使用SSH进行Git身份验证,请放心:你什么都不用做如果您使用的是HTTPS Git,请输入个人访问令牌,而不是输入密码。这些可以通过转到personal access tokens page来创建。

bxfogqkk

bxfogqkk2#

根据@Nitsew的回答,创建您的personal access token,并使用您的令牌作为您的用户名,并输入空白密码。
之后,您将不需要任何凭据即可访问所有私有存储库。

**2021年更新:(适用于我的M1 Mac)

创建新的个人访问令牌(勾选相应的框以授予权限)。使用GitHub username和密码作为Personal Access Tokens
x1c 0d1x的数据

nnt7mjpx

nnt7mjpx3#

对于每个挣扎的人来说,对我有效的是创建个人访问令牌,然后将其用作用户名和密码(在打开的提示中)。

ruyhziif

ruyhziif4#

通常会想到,您已经设置了双因素身份验证,经过几次密码尝试和可能的密码重置。那么,我们如何使用双因素身份验证来git克隆一个私有仓库呢?这很简单,使用访问令牌。

如何使用访问令牌对Git进行身份验证

1.转到https://github.com/settings/tokens
1.单击右上角的“生成新令牌”按钮。
1.为令牌指定一个描述性名称。
1.设置令牌的所有必需权限。
1.单击底部的Generate token按钮。
1.将生成的令牌复制到安全的地方。
1.使用git clone时使用此令牌而不是密码。
哇,它的工作!

evrscar2

evrscar25#

第1步:获取个人访问令牌。https://github.com/settings/tokens
第二步:放入账户和代币。示例如下:

$ git push
Username for 'https://github.com':            # Put your GitHub account name
Password for 'https://{USERNAME}@github.com': # Put your Personal access token

字符串
有关如何创建个人访问令牌的链接:https://help.github.com/en/github/authenticating-to-github/creating-a-personal-access-token-for-the-command-line

fjaof16o

fjaof16o6#

如果您的存储库启用了2FA。强烈建议使用www.example.com提供的应用程序github.com这里是链接:https://desktop.github.com/
下载并安装后。按照withard,该应用程序将要求您提供一次性密码登录。一旦你填写了一次性密码,你现在就可以看到你的仓库/项目了。

z9gpfhce

z9gpfhce7#

https://dev.to/fpeluso/how-to-clone-a-gitlab-repository-after-enabling-2fa-6oc

git clone https://oauth2:{PERSONAL ACCESS TOKEN}@github.com/[...]/MyPrivateRepo

字符串

wtlkbnrh

wtlkbnrh8#

**2023更新:**我发现安装GitHub CLI很容易。只需安装cli并运行gh repo clone <repo_account_name>/<repo_name>,该gh repo clone <repo_account_name>/<repo_name>可在存储库页面上找到。

相关问题