mac上配置gitlab和github账号

2,556 阅读2分钟

六一儿童节快乐童心祝福文章标题.jpg

1. 进入ssh文件夹

cd ~
cd .ssh

2. 重新生成github和gitlab的密钥,并且在两个网站上添加新的ssh

ssh-keygen -t rsa -C '我们的gitlab邮箱' -f ~/.ssh/id_rsa_gitlab 
ssh-keygen -t rsa -C '注册github账户的邮箱' -f ~/.ssh/id_rsa_github 
//两次回车直接生成个人邮箱相关密钥

3. 目录下可以看到生成的密钥文件,默认状态是生成id_rsa和id_rsa.pub

image.png gitlab

image.png github

image.png 其他的代码管理网站,应该也是一样的操作哈。如果有啥其他的网站,可以评论下滴滴我,我去学学~

4. 创建&配置config文件(最好不要直接取同名,取了同名会有警告和其他文件重名),管理ssh 会话

touch config
vim config

按 shift + i,进入书写模式。注意:config有它严格的格式,不能有注释,也就是要把注释去掉,不然读取不到的。

Host github.com 
HostName github.com 
User xxx@163.com //user后边为github的邮箱 
IdentityFile ~/.ssh/id_rsa 

Host gitlab.xxx.cn //host后边为公司gitlab域名 
HostName gitlab.xxx.cn //同上为公司gitlab域名 
User xxx@163.com //user后为gitlab的邮箱 
IdentityFile ~/.ssh/id_rsa_gitlab

写完后,按住esc,切换模式。保存并且退出:先写入:w,在写入:q 就可以啦

最好再次进入vim config看看是否写好了。

5. 测试ssh连接

通过本地和远程网站配置的ssh,现在来测试一下ssh是否连接成功

ssh -T git@github.com //输入的是网站域名 
ssh -T git@gitlab.xxx.cn

注意: 如果是第一次进行ssh -T 的操作,会出现Are you sure you want to continue connecting (yes/no/[fingerprint])?,直接yes之后enter就可以了。如果不进行这个操作,你会看到

Are you sure you want to continue connecting (yes/no/[fingerprint])?
Host key verification failed.
fatal: Could not read from remote repository.

image.png

成功:

image.png 失败:

Permission denied (publickey) 
//说明本地和网站没有匹配的ssh

6. 本地配置、全局配置

因为公司是用的gitlab,所以本地配置是用的gitlab的用户名和邮箱,全局用的是github,毕竟你一般的项目都是放到github上面的,我觉得可以放在全局配置。

看到网上说的是这样,但是具体为何要这样做,我也不是很了解。

// 本地配置 
$ git config --local user.name 'gitlab账号名' 
$ git config --local user.email '公司账号邮箱' 

// 全局配置 
$ git config --global user.name '个人github账号名' 
$ git config --global user.email '个人github账号邮箱'