git 多用户多仓库配置

时间:2022-05-13 14:27:06

ssh全称是Secure Shell,即安全Shell,是一种可以进行安全远程登录的协议,在Linux中以OpenSSH为代表,Windows中则有Putty作为实现。ssh的会话建立阶段类似TCP协议的三次握手,里面涉及到利用非对称加密(RSA/DSA)和密码协商(diffie-hellman,用于生成加密会话的对称密码)等密码学知识,暂且不表,客户端的识别(Identity)与授权(Authority)涉及到传统password或者公私钥机制,与git多账户密切相关,接下来叙述ssh客户端授权机制。

 

1. 生成新ssh key

如果又多个仓库 分别生成密钥对

cd ~/.ssh/

ssh-keygen -t rsa -C  'qc_6xxxxx@git.code.tencent.com' -f id_rsa_tencen

  

2. 上传公钥到git仓库提供商

3. 配置config用来区别使用不同仓库

cd ~/.ssh/
vim config
#写入
Host tencode
        HOSTNAME git.code.tencent.com
        User git
        PreferredAuthentications publickey
        IdentityFile id_rsa_tencent

Host alicode
        HOSTNAME code.aliyun.com
        User git
        PreferredAuthentications publickey
        IdentityFile id_rsa_aliyun

 4. 添加远程仓库的时候要注意了。 不能是用服务商提供的地址git@code.aliyun.com:xxxx

应该用 git@alicode 来替换  code.aliyun.com 这个域名其它不变。

 

enjoy!