git生成公钥

本文详细介绍了如何生成并配置用于公司内部GitLab和GitHub的SSH密钥,包括创建密钥对、添加私钥到SSH代理、配置~/.ssh/config文件等步骤,并提供了测试连接的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


1,生成一个公司用的SSH-Key     

$ ssh-keygen -t rsa -C "youremail@yourcompany.com” -f ~/.ssh/id-rsa

 

在~/.ssh/目录会生成id-rsa和id-rsa.pub私钥和公钥。 我们将id-rsa.pub中的内容粘帖到公司gitlab服务器的SSH-key的配置中。

 

2,生成一个github用的SSH-Key

$ ssh-keygen -t rsa -C "youremail@your.com” -f ~/.ssh/github-rsa

在~/.ssh/目录会生成github-rsa和github-rsa.pub私钥和公钥。 我们将github-rsa.pub中的内容粘帖到github服务器的SSH-key的配置中。

3,添加私钥

$ ssh-add ~/.ssh/id_rsa $ ssh-add ~/.ssh/github_rsa

如果执行ssh-add时提示"Could not open a connection to your authentication agent",可以现执行命令:

$ ssh-agent bash

然后再运行ssh-add命令。

# 可以通过 ssh-add -l 来确私钥列表
$ ssh-add -l
# 可以通过 ssh-add -D 来清空私钥列表
$ ssh-add -D

 

 

4,修改配置文件

在 ~/.ssh 目录下新建一个config文件

touch config

添加内容:

# gitlab
Host gitlab.com
    HostName gitlab.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/id_rsa
# github
Host github.com
    HostName github.com
    PreferredAuthentications publickey
    IdentityFile ~/.ssh/github_rsa

5,目录结构

6,测试

$ ssh -T git@github.com

输出

Hi stefzhlg! You've successfully authenticated, but GitHub does not provide shell access.

就表示成功的连上github了.也可以试试链接公司的gitlab.




其实这个config文件夹的作用还不是太清楚,连接码云的时候直接添加公钥进去就行了,然后上一家公司却配置了外网和内网的config文件

借鉴文章

http://www.jianshu.com/p/f7f4142a1556

https://my.oschina.net/stefanzhlg/blog/529403

http://blog.youkuaiyun.com/u012365926/article/details/52293036

https://segmentfault.com/a/1190000002627706

http://www.cnblogs.com/qingguo/p/5686247.html

我记得当时在开发的时候公司配置了内网外网 config文件 我自己还生成了一对id_rsa连接github了的


一个公钥应该是可以在多个位置使用的,比如公司git上,和你自己的github上,码云上,但是如果在github上用多个账号添加同一个公钥就会提示已经存在



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值