1. 生成 git 账号公钥秘钥
ssh-keygen -t rsa -C username@xxx.com
2. 公钥拷贝及上传
cat ~/.ssh/id_rsa.pub
复制内容,然后在对应网站的个人账户-设置-ssh里进行添加。
3. config 配置
创建一个config文件,每个账号配置一个Host节点。
vi ~/.ssh/config
主要配置文件内容如下
# github-1 account
Host u1.github.com
HostName github.com
User user1
IdentityFile ~/.ssh/id_rsa_github1
PreferredAuthentications publickey
# github-2 account
Host u2.github.com
HostName github.com
User user2
IdentityFile ~/.ssh/id_rsa_github2
PreferredAuthentications publickey
# gitlab account
Host gitlab.com
HostName gitlab.com
User iJarmin_lab
IdentityFile ~/.ssh/id_rsa_gitlab
PreferredAuthentications publickey
# oschina account
Host git.oschina.net
HostName git.oschina.net
User username2
IdentityFile ~/.ssh/id_rsa_oschina
PreferredAuthentications publickey
配置项说明:
Host ##主机别名,这个可以随便写
HostName ##服务器真实地址
IdentityFile ##私钥文件路径
PreferredAuthentications ##认证方式
User ##用户名
4. 进行测试是否成功
4.1 测试github 账号1
ssh -T git@u1.github.com
提示 you,re successfully authenticated,but Github does not provide shell access
4.2 测试gitlab
ssh -T git@gitlab.com
提示welcome to gitlab
5. 配置账户的 username 和 email
请参考博客内文章
6. 通过 ssh clone 项目
比如,我们想用 github-2 account clone 仓库,原仓库地址为 git@github.com:github-2/respository.git,我们需要将host 替换成host 别名(u2.github.com),如下
git clone git@u2.github.com:github-2/respository.git
7. 参考
转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 chgocn@gmail.com