ssh github + gitlab,如何制作?

问题描述 投票:0回答:2

我想在每次使用git时都不输入我的用户名和密码,所以我的ssh配置是:

Host gitlab.com
   HostName gitlab.com
   PreferredAuthentications publickey
   IdentityFile /root/.ssh/id_rsa_gitlab
   IdentitiesOnly yes


Host github.com
   HostName github.com
   PreferredAuthentications publickey
   IdentityFile /root/.ssh/id_rsa
   IdentitiesOnly yes

我制作了2个不同的rsa密钥,向github和gitlab添加了pub键,但是它一直在问我登录和通过,请问有人可以帮助我吗?

git ssh
2个回答
0
投票

导航到项目目录并键入git config --list

如果remote.origin.url看起来像https://gitlab.com/gitlab-org/gitlab-ce.git,你需要将其改为看起来像[email protected]:gitlab-org/gitlab-ce.git的那个。这可以在GitLab上任何项目的主页上找到。

使用git-remote设置新URL。

git remote set-url origin [email protected]:gitlab-org/gitlab-ce.git

这个answer展示了这个过程的一个例子。


0
投票

Git提供了两种减少重复的方法:

  1. 给定身份验证上下文的用户名的静态配置。
  2. 用于缓存或存储密码或与系统密码钱包或钥匙串交互的凭据助手。

如果您没有可用于密码的安全存储,则第一个是简单且适当的。通常通过将其添加到您的配置来配置:

[credential "https://example.com"] username = me

另一方面,凭证助手是外部程序,Git可以从中请求用户名和密码;它们通常与OS或其他程序提供的安全存储接口。

要使用帮助程序,必须先选择要使用的帮助程序。 Git目前包括以下帮助者:

缓存 - 在内存中缓存凭证一小段时间。 store - 将凭据无限期地存储在磁盘上。

请查看详细信息:https://git-scm.com/docs/gitcredentials

© www.soinside.com 2019 - 2024. All rights reserved.