likes
comments
collection
share

📚上班也想搞私活?你可能需要配置多个SSH

作者站长头像
站长
· 阅读数 25

最近需要做一些自己的项目,仓库建立在了github上,但是平时公司的项目都是建立在gitlab上面的,一个ssh肯定是无法解决的,如果不搞定这个问题的话可能后面会遇到一些奇奇怪怪的问题,有可能在需要提交代码的时候无法提交,这样就坏大事了,那么直接看看ssh能不能同时支持github和gitlab两个仓库,那么我们需要用到两个ssh

问题的源头-同时存在github和gitlab项目

本地只设置了github的公钥,克隆gitlab的项目会出现报错 📚上班也想搞私活?你可能需要配置多个SSH

检查现有的 SSH 密钥

专门删除了ssh目录下的公钥和密钥来给大家做一下演示,git bash中输入 ls -al ~/.ssh 以查看是否存在现有的 SSH 密钥

📚上班也想搞私活?你可能需要配置多个SSH

上面这是没有生成ssh密钥的情况

默认情况下,GitHub 的一个支持的公钥的文件名是以下之一。

  • id_rsa.pub
  • id_ecdsa.pub
  • id_ed25519.pub

以下是生成了ssh密钥的情况 📚上班也想搞私活?你可能需要配置多个SSH

具体细节参考 git常见问题

生成 SSH 密钥

git bash中输入 ssh-keygen -t ed25519 -C "your_email@example.com" 生成密钥

📚上班也想搞私活?你可能需要配置多个SSH

可以看到ssh目录生成了密钥和公钥,公钥是pub后缀的

📚上班也想搞私活?你可能需要配置多个SSH

SSH 密钥添加到github

打开你们的github在这地方添加公钥 📚上班也想搞私活?你可能需要配置多个SSH

key的内容是.pub后缀的ssh目录下的内容,用记事本打开,粘贴到key中即可 📚上班也想搞私活?你可能需要配置多个SSH

现在本地已经有私钥,公钥已经配置到远程的github上面了,需要测试下本地和远程的连接是否成功

测试链接

可以通过在终端输入 ssh -T git@github.com 来测试本地密钥是否正常工作

📚上班也想搞私活?你可能需要配置多个SSH

配置 ssh

📚上班也想搞私活?你可能需要配置多个SSH

如果出现 Hi ,则表示本地已经和远程的github建立链接,也能直接克隆项目了,让我们来试一试吧

📚上班也想搞私活?你可能需要配置多个SSH

到这里可以成功的克隆我们在远程的github项目了。

新建第二个ssh

新建第二个ssh的时候建议跟着我的步骤做,会比较简单,因为已经踩了很多坑

直接在ssh目录进入git bash

再执行上面的同样的命令来生成第二个密钥 ssh-keygen -t ed25519 -C "your_email@example.com 这时候会出现同名的报错,因为已经存在一个了

这里别急着回车!!!! 这里别急着回车!!!! 这里别急着回车!!!!

📚上班也想搞私活?你可能需要配置多个SSH

但我们仍然执行上面的密钥,当报错提示出现,我命名为lab_ed25519,这样两个密钥就不会重名,等输入重命名后就可以一直回车了。

看一下现在的ssh目录,已经存在两个密钥了。

📚上班也想搞私活?你可能需要配置多个SSH

继续到gitlab中重复公钥的配置即可

最后-配置config

📚上班也想搞私活?你可能需要配置多个SSH

在ssh目录下新建一个config,并且输入以下配置

这配置是告诉git,连接github.com和gitlab.com分别用两个不同的密钥去进行匹配

Host github.com
HostName github.com
IdentityFile ~/.ssh/id_ed25519

Host gitlab.com
HostName gitlab.com
IdentityFile ~/.ssh/lab_ed25519

🙏 感谢您花时间阅读这篇文章!如果觉得有趣或有收获,请关注我的更新,给个喜欢和分享。您的支持是我写作的最大动力!✍️🌟

往期好文推荐

转载自:https://juejin.cn/post/7276019064019386402
评论
请登录