公司Gitlab,没有域名,设置多SSH(公司和Gitee)

本文详细记录了如何设置多个SSH密钥,以便同时访问公司的GitLab和GitHub。过程中遇到了端口不确定的问题,最终通过查看Gitlab项目的设置找到正确端口。配置包括生成不同密钥、创建ssh config文件、添加公钥以及解决Push/Pull时需要密码的困扰。
摘要由CSDN通过智能技术生成

前言

进入公司后,公司有自己的gitlab,加上自己也在用GitHub和gitee,琢磨了一天,写下过程

补充遇到坑了

当发现设置了ssh,使用ssh -t git@gitee.com 是欢迎的,但是clone就是拒绝的 我们选择另外一个生成的方法:有rsa 和 ed25519 这两种

1 设置多个ssh先

gitee的教程

补充

设置name和email

git config --global user.name '用户名称'
git config --global user.email '登录邮箱'

生成密钥:

ssh-keygen -t rsa -C '登录邮箱'

2 设置config

在C:\Users\用户名.ssh 下创建config文件,内容如下:

# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_gitee
# gitlab
Host 10.1.1.1(举例)
HostName 10.1.1.1(举例)
port 226 (有额外的非80端口需要这个)
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_gosuncn

3 坑

因为是公司gitlab,没有域名,一开始也不知道端口是什么,就设置了web中gitlab的端口10080/10081,一直都不对
琢磨一天,发现在公司Gitlab的web版本创建一个空白项目 就有得看了
在这里插入图片描述
把这里的orginssh 打码的地方,port端口和地址写到第二布的config配置文件中就可以了

4.添加公钥

去到Gitlab的web服务,在设置里面添加ssh公钥

5.测试

成功!

$ ssh -T git@gitee.com
$ ssh -T git@github.com

另外

6.解决设置SSH后,push/pull还需要密码

因为你一开始下载项目用的不是ssh链接的,而是http
首先查看:

git config -l

得到如下:

remote.origin.url=http:/省略
这里就说明了,我们使用的是http的方式,所以需要密码

解决

  1. 修改这个remote
  2. 删除项目,重新用ssh方式下载
    在这里插入图片描述
    选择ssh克隆的 就完美解决了
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要同时配置GitLabGitHubSSH,你可以按照以下步骤进行操作: 1. 打开终端并进入.ssh文件夹,可以使用以下命令: ``` cd ~/.ssh ``` 2. 查看是否已经存在id_rsa_gitlab和id_rsa_github的公钥文件,可以使用以下命令: ``` ls id_rsa_gitlab.pub ls id_rsa_github.pub ``` 3. 如果公钥文件不存在,你需要生成新的SSH密钥对。可以使用以下命令来生成: ``` ssh-keygen -t rsa -C "your_email@example.com" ``` 这会在.ssh文件夹下生成一个新的SSH密钥对,并且会要求你提供一个文件名和密码。 4. 复制id_rsa_gitlab.pub的内容,并将其添加到你的GitLab帐户中的SSH密钥设置中。可以使用以下命令复制内容: ``` cat id_rsa_gitlab.pub ``` 5. 复制id_rsa_github.pub的内容,并将其添加到你的GitHub帐户中的SSH密钥设置中。可以使用以下命令复制内容: ``` cat id_rsa_github.pub ``` 6. 配置SSH config文件,以便区分GitHubGitLab。可以使用以下命令编辑config文件: ``` nano ~/.ssh/config ``` 然后按照以下格式添加配置信息: ``` # GitHub Host github.com HostName ssh.github.com User your_github_email@example.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_github Port 443 # GitLab Host gitlab.com HostName gitlab.com User your_gitlab_email@example.com PreferredAuthentications publickey IdentityFile ~/.ssh/id_rsa_gitlab ``` 注意替换your_github_email@example.com和your_gitlab_email@example.com为你自己的GitHubGitLab邮箱。 回答完问题后的
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值