侧边栏壁纸
博主头像
神的孩子都在跳舞博主等级

HARD WORK PAYS OFF

  • 累计撰写 22 篇文章
  • 累计创建 64 个标签
  • 累计收到 0 条评论

如何在git中使用多代码平台的SSH连接

神的孩子都在跳舞
2023-03-28 / 0 评论 / 0 点赞 / 5,162 阅读 / 941 字 / 正在检测是否收录...

日常工作中我们可能需要处理来自不同代码托管平台仓库的代码,如github、gitee、jenkins等,如何使用SSH并在这些仓库中来回切换并能顺畅无感的提交代码是要优先解决的问题。

第一步

生成特定标签的ssh key,如下例子,比方说我有个企业的repo在github上,它区分于普通的public repo,针对这个企业的账号,重新设置它的SSH key,我使用了“enterprise”作为这个ssh的标识。以下基于linux平台。

 ssh-keygen -t rsa -C "enterprise"

同时修改默认的路径,我这边是在/home/ivan/.ssh/enterprise
image.png

第二步

cat /home/ivan/.ssh/enterprise.pub

把生成后的密钥贴到github 平台上的ssh密钥中 "Settings -> SSH and GPG keys -> New SSH key"

第三步

新建一个配置文件~/.ssh/config

 Host github-enterprise
  HostName github.com
  IdentityFile ~/.ssh/enterprise
  User git

Host github
  HostName github.com
  IdentityFile ~/.ssh/id_rsa
  User git

Host gitee
  HostName gitee.com
  IdentityFile ~/.ssh/gitee
  User git

第四步

上面我们指定了hostgithub-enterprise作为企业repo的host之后就可以使用这个名字取代默认的github。企业账号额外一步是需要授权给到这个企业,如下操作。
image.png

如,需要clone repo:

git clone git@github-enterprise:OWNER/REPO

添加本地到远程:

 git remote add github-enterprise git@github-enterprise:OWNER/REPO

如果只是使用普通的github repo只需要把host换一下,如:

git clone git@github.com:OWNER/REPO
# 或者
git clone git@gitee.com:OWNER/REPO
0
博主关闭了所有页面的评论