开发者

Linux 服务器如何用 SSH 拉取多个 Git 工程

目录
  • 场景假设:
  • 1. 生成两个 SSH key(如果没有)
  • 2. 编辑 SSH 配置文件
  • 3. 修改 Git 仓库地址,使用 SSH 配置的 Host
    • ✅ 验证
    • 提示

在一台 linux 服务器上用 SSH 拉取两个 Git 工程,而这两个工程对应的是 不同的 Git 账号(SSH Key),做法:

使用 SSH Config 配置多个 Git 账号

场景假设:

  • 工程 A 的仓库地址:git@github.com:company-a/project-a.git
  • 工程 B 的仓库地址:git@github.com:company-b/project-b.git
  • 工程 A 使用的 SSH key 是:~/.ssh/id_rsa_company_a
  • ​​​​​​​工程 B 使用的javascript SSH key 是:~/.ssh/id_rsa_company_b

1. 生成两个 SSH key(如果没有)

ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_company_a
ssh-keygen -t rsa -b 4096 -f ~/.ssh/id_rsa_company_b

然后将这两个 *.pub 公钥添加到各自 Git 平台账号的 SSH 设置中。

2. 编辑 SSH 配置文件

vim ~/.ssh/config

添加如下配置(或 nano 编辑):

# 配置公司 A 的 Git 访问
HostBAJfG github-company-a
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa_company_a
# 配置公司www.devze.com B 的 Git 访问
Host github-company-b
    HostName 编程客栈github.com
    User git
    IdentityFile ~/.ssh/id_rsa_company_b

3. 修改 Git 仓库地址,使用 SSH 配置的 Host

⚠️ 注意:不能用默认的 git@github.com,而要改成你定义的别名 github-company-agithub-company-b

例如:

克隆项目 A:

git clone git@github-company-a:company-a/project-a.git

克隆项目 B:

git clone git@github-company-b:company-b/project-b.git

✅ 验证

可以通过以下命令验证是否正确加载不同 key:

ssh -T git@github-company-a
ssh -T git@github-company-b

提示

确保两个私钥文件权限为 600:

chmod 600 ~/.ssh/id_rsa_company_*

如果是在 CI/CD 环境或服务器上部署,可将 ssh/config 和私钥通过环境变量或自动化方式部署上去。

到此这篇关于Linux 服务器用 SSH 拉取多个 Git BAJfG工程的文章就介绍到这了,更多相关linux服务器ssh拉取多个git内容请搜索编程客栈(www.devze.com)以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程客栈(www.devze.com)!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新运维

运维排行榜