Git SSH密钥:在github和gitlab上有两个不同的帐户。

11 浏览
0 Comments

Git SSH密钥:在github和gitlab上有两个不同的帐户。

是否有办法通过使用两个不同的电子邮件地址,通过SSH密钥来操作GitLab和GitHub账户?

我有两个电子邮件地址,username@gmail.com和username@xyz.in,并且我想要将一些项目推送到GitLab,同时将一些其他项目推送到GitHub,并且我也想避免在每个推送命令中输入密码。这是可能的吗?

0
0 Comments

问题的出现原因是用户在使用Git SSH Key时遇到了一个问题:他们希望在GitHub和GitLab上使用不同的账户,但是无法成功进行身份验证。

解决方法是通过使用SSH而不是HTTPS来上传公共SSH密钥到服务器,并使用SSH URL。对于GitHub,URL应该类似于git.com:<username>/<repo>.git。然后,用户可以尝试在~/.ssh/config文件中设置不同的SSH密钥和用户名。在这个配置文件中,用户可以指定不同的主机、主机名、身份文件和用户名。其中IdentityFile是私有SSH密钥的路径。

然而,当用户推送到存储库时,仍然会要求输入用户名和密码。这可能是因为用户使用的是HTTPS URL。解决方法是将URL更改为SSH URL。这样,用户将不再需要输入用户名和密码。

最后,用户表示在网络上寻找了很多解决方法,但只有这个答案是正确和有效的,他对此表示感谢。

通过以上整理,我们可以得出以下文章:

标题:Git SSH Key:在GitHub和GitLab上使用不同账户的解决方法

内容:

在使用Git SSH Key时,有用户遇到了一个问题:他们希望在GitHub和GitLab上使用不同的账户,但是无法成功进行身份验证。为了解决这个问题,用户可以尝试使用SSH而不是HTTPS来上传公共SSH密钥到服务器,并使用SSH URL。对于GitHub,URL应该类似于git.com:<username>/<repo>.git

另外,用户可以通过在~/.ssh/config文件中设置不同的SSH密钥和用户名来实现使用不同SSH密钥或用户名的目的。在这个配置文件中,用户可以指定不同的主机、主机名、身份文件和用户名。其中IdentityFile是私有SSH密钥的路径。

然而,当用户推送到存储库时,仍然会要求输入用户名和密码。这可能是因为用户使用的是HTTPS URL。为了解决这个问题,用户应将URL更改为SSH URL。这样,用户将不再需要输入用户名和密码。

最后,用户表示在网络上寻找了很多解决方法,但只有这个答案是正确和有效的,他对此表示感谢。

0
0 Comments

问题出现的原因是需要在GitHub和GitLab上使用不同的账户,但是由于使用SSH密钥进行身份验证时,只能配置一个密钥。解决方法是使用个人访问令牌(personal access tokens)来替代SSH密钥进行身份验证。

首先,在GitHub上登录到你的账户,进入设置页面,然后滚动到页面底部,你会看到一个名为“Personal Access Tokens”的链接,点击进入。

然后创建一个具有完整对仓库访问权限的令牌(如果只是想进行拉取和推送操作,其他API访问权限并不重要)。

令牌系统旨在允许API访问GitHub,但它也可以与HTTPS链接一起使用。

接下来,使用HTTPS方式克隆仓库(如果已经使用SSH方式克隆,只需复制HTTPS链接并替换.git/config文件中的SSH链接)。然后编辑.git/config文件,在HTTPS链接中添加访问令牌。

访问令牌的语法是标准的基本身份验证语法,与Web浏览器使用的相同:

https://:.com

我使用这种方法来允许我在GitHub上使用多个用户账户(工作账户、个人项目账户、志愿工作账户等)。

0