前提:已经有了一套可以正常使用的git环境。
需求说明:在Mac下,用两个gitlab账号上传或下载代码,并且互不影响。
闲言不语,直接说实现步骤:
1、添加ssh key
为了使用两个gitlab账号管理自己的代码,前提得是有两个gitlab账号,并且都要生成对应的ssh key:
➜ Miguo git:(master) ✗ cd ~/.ssh #切换到.ssh目录
➜ Miguo git:(master) ✗ ssh-keygen -t rsa -C "miguo@gmail.com" #添加ssh key
Generating public/private rsa key pair.
Enter file in which to save the key (/Users/miguo/.ssh/id_rsa): id_rsa_gmail #指定名称
使用同样的方法,添加miguo@126.com。这样,我们就能得到了两个ssh key:
2、配置config
在.ssh目录下添加config,具体配置内容可以参照这个示例:
➜ .ssh git:(master) ✗ vi config
# 该文件用于配置私钥对应的服务器
# Default github user(miguo@126.com)
Host gitlab126 HostName gitlab.com User git IdentityFile /Users/miguo/.ssh/id_rsa_126
# second user(miguo@gmail.com)
# 建一个github别名,新建的帐号使用这个别名做克隆和更新
Host gitlabgmail HostName gitlab.com User git IdentityFile /Users/miguo/.ssh/id_rsa_gmail
3、验证
上面两步,添加了两个ssh key,也添加了对应的config,这里来验证一下。直接拉取代码:
在添加两个ssh key之前,拉取代码的方式为:
➜ .ssh git:(master) ✗ git clone git@gitlab.com:miguo/KMiguoIOS.git
Cloning into 'KMiguoIOS'...
remote: Counting objects: 250, done.
remote: Compressing objects: 100% (153/153), done.
remote: Total 250 (delta 82), reused 250 (delta 82)
在添加两个ssh key之后,通过gitlabgmail可以取代之前的git@gitlab.com,拉取代码的方式为:
➜ .ssh git:(master) ✗ git clone gitlabgmail:miguo/KMiguoIOS.git
Cloning into 'KMiguoIOS'...
remote: Counting objects: 250, done.
remote: Compressing objects: 100% (153/153), done.
remote: Total 250 (delta 82), reused 250 (delta 82)
至此,修改自己拉取代码的脚本后,就可以拉取两个gitlab账号下的代码了。