前言
gitlab、github、gitee都是目前一些流行得代码托管平台。在实际工作中,企业一般使用gitlab作为代码托管仓库,跟个人使用有所不同,因此需要添加多个仓库ssh-key认证。以下是我对配置流程的一些了解,也是我对此的记录。
配置流程
1、配置git config
git全局配置用户名和邮箱
git config --global user.name "your name"
git config --global user.email "your email address"
2、生成ssh-key
输入以下命令生成密钥,默认生成文件名id_rsa。
ssh-keygen -t ed25519 -C "email@example.com" -f ~/.ssh/id_rsa_github
ssh-keygen -o -t rsa -b 4096 -C "email@example.com" -f ~/.ssh/id_rsa_github
email@example.com 代表注册Gitlab、Gitee、Github等账号时用的邮箱
-f 代表文件名
~/.ssh/ 代表ssh的文件路径
id_rsa_github 代表ssh文件名(可以自定义)
输入命令后一路回车即可,对应文件生成在.ssh目录下面
3、添加ssh-key
复制ssh-key的方式有两种。
1.输入cat ~/.ssh/文件名 | clip ,例如cat ~/.ssh/id_rsa_github.pub | clip,复制ssh key。
2.直接用记事本打开 id_rsa_github.pub , ctrl+a 全选复制。
3.来到对应平台找到 ssh 添加页面,新建一个 ssh-key。
4、测试密钥认证
ssh -T git@github.com
打开cmd 或 git bash 输入以上命令验证密钥,成功出现用户名表示验证通过。
需要注意的是,由于Gitlab是私有代码仓库,测试时需要在git@后面输入Gitlab所在ip地址或域名,才能正确测试。
5、添加config文件
首先在./ssh/文件夹下手动添加config文件,配置密钥信息。
# gitlab
Host gitlab.com
HostName gitlab.com
User root
IdentityFile ~/.ssh/id_rsa
# github
Host github.com
HostName github.com
User root
IdentityFile ~/.ssh/id_rsa_github
Host 代表 关键词
HostName 代表 主机地址
User 代表 用户名
IdentityFile 代表 认证文件
6、添加config文件
完成配置,还需要对每个密钥添加信任,打开Git Bash 输入下面的指令。
eval $(ssh-agent -s)
ssh-add ~/.ssh/other_id_rsa
eval 代表 开启代理认证指令
ssh-add 代表 添加ssh文件认证
7、认证测试
完成多秘钥认证后,通过ssh -T git@,测试不同平台的密钥是否能连接成功。
结语
本文参考至:https://juejin.cn/post/6844904008163786765
本文只是作为我的个人记录,如果你有什么建议,欢迎留言互相讨论。
最后,祝工作顺利,生活幸福。