当我们在 github、gitee上同时进行了代码的管理,或者在github上有不同的俩个项目(想要安全的管理代码),我们需要给每个代码仓库设置单独的密钥管理

在 GitHub 上配置多个 SSH 密钥可以方便地管理不同的账户或项目。你可以为不同的 GitHub 账户或项目创建和使用多个 SSH 密钥,以下是具体的步骤:
你可以为每个 GitHub 账户或项目创建一个单独的 SSH 密钥。假设你已经有一个默认的 SSH 密钥,现在需要为新的账户或项目创建一个新的密钥。

# 创建新的 SSH 密钥
ssh-keygen -t rsa -C "your_email@example.com"

你会被提示输入密钥保存的文件名,这里需要指定不同的文件名以区分已有的密钥:

Enter file in which to save the key (/Users/your_user/.ssh/id_rsa): /Users/your_user/.ssh/id_rsa_account2

注意:你可以将路径更改为你想要保存的位置,并确保每个密钥文件名不同。
2. 添加 SSH 密钥到 SSH Agent

创建密钥后,需要将新密钥添加到 SSH Agent 中。

# 启动 ssh-agent
eval "$(ssh-agent -s)"

# 添加新创建的 SSH 密钥到 agent 中
ssh-add ~/.ssh/id_rsa_account2

如果你在生成密钥时设置了密码短语,会提示你输入密码短语。

  1. 将 SSH 公钥添加到 GitHub

你需要将新密钥的公钥部分添加到 GitHub 账户中。在这里插入代码片

首先,复制新密钥的公钥:

cat ~/.ssh/id_rsa_account2.pub
然后登录 GitHub,进入 Settings -> SSH and GPG keys,点击 New SSH key,将复制的公钥粘贴进去。

4. 配置 SSH Config 文件

在配置多个 SSH 密钥时,可以通过修改 ~/.ssh/config 文件来为不同的密钥和项目设置指定的 SSH 密钥。
# 编辑 ~/.ssh/config 文件
nano ~/.ssh/config

然后添加如下配置:

# 默认 GitHub 账号
Host github.com
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_rsa

# 第二个 GitHub 账号
Host github-account2
  HostName github.com
  User git
  IdentityFile ~/.ssh/id_rsa_account2```
这样配置后,对于使用第二个 GitHub 账户的项目,你需要将 origin 设置为 github-account2,而不是默认的 github.com。

5. 为项目设置远程地址

对于使用第二个 GitHub 账户的项目,配置项目的 origin 地址:

git remote set-url origin git@github-account2:username/repository.git

git remote set-url origin git@github-account2:username/repository.git 这个命令需要在你想要更改远程地址的项目根目录下执行。
这样,Git 会根据 Host 匹配不同的密钥。

6. 验证密钥配置

最后,你可以测试是否成功配置了多个 SSH 密钥:

ssh -T git@github.com
ssh -T git@github-account2


需要编辑\~/.ssh/config文件
![在这里插入图片描述](https://i-blog.csdnimg.cn/direct/aea94800c15c4e2a8920be1f46655ab6.png)
cd ~/.ssh   找到文件
open config 打开文件


2 当然同一平台 以 github为例
GitHub 上的多个项目可以共享一个 SSH 密钥,你不需要为每个项目单独创建密钥。一个 SSH 密钥可以关联到你的 GitHub 账户,所有你管理的项目都可以通过这个密钥进行身份验证。只要这个密钥已经添加到你的 GitHub 账户中,Git 就能识别并使用它来访问你账户下的所有项目

ssh-keygen -t rsa -C “your_email@example.com”

你可以使用默认路径,也可以指定其他路径。生成后,将公钥部分(通常是 ~/.ssh/id_rsa.pub)添加到 GitHub 账户。
2.	将密钥添加到 GitHub 账户:
在 GitHub 中,进入 Settings -> SSH and GPG keys,点击 New SSH key,将生成的公钥粘贴进去。这会使该密钥与整个 GitHub 账户关联。
	3.	在多个项目中使用这个 SSH 密钥:
Git 会自动使用默认路径下的 SSH 密钥(如 ~/.ssh/id_rsa)进行身份验证。因此,如果这个密钥已经与 GitHub 账户关联,多个项目都会自动使用这个密钥。你可以通过以下步骤为每个项目设置远程地址,从而使用这个密钥:
	•	克隆项目(如果还没有克隆项目):
	

git clone git@github.com:username/project1.git
git clone git@github.com:username/project2.git

	•	设置远程仓库地址(如果已经有项目):
进入项目目录,设置 origin 地址为 SSH 格式,确保 Git 使用你的 SSH 密钥进行连接。

cd /path/to/project1
git remote set-url origin git@github.com:username/project1.git

cd /path/to/project2
git remote set-url origin git@github.com:username/project2.git

这样,每个项目都会通过相同的 SSH 密钥进行身份验证,不需要为每个项目创建单独的密钥。

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部