概述
电脑上已经配置了github的ssh连接。现在又有一个不同的git账户,也就是要在一台电脑上配置两个git账号。
下面记录一下我配置的方法。
一、取消git全局配置
之前配置github的时候,用命令
1 git config --golbal user.name "XXX" 2 git config --golbal user.email "xxx@aa.com"
因为需要用到两个git账户,所以针对之前配置的全局配置就得取消。
命令如下:
1 #全局配置账户移除 2 git config --global --unset user.name 3 4 #查看全局用户名 5 git config --global user.name 6 7 #全局配置邮箱移除 8 git config --global --unset user.email 9 10 #查看全局邮箱 11 git config --global user.email
二、生成新的SSH KEYS
• 先用cd命令将当前目录切换到~/.ssh目录下
• 用ssh-keygen命令生成一组新的id_rsa_new和id_rsa_new.pub
生成方法用命令ssh-keygen -t rsa -C "xxx@aa.com",这里回车确认之后和第一次配置就有不同了。
第一次给github配置sshkey时,直接按回车,其余什么都不管。最后看生成的id_rsa文件和id_rsa.pub文件。
这次需要给这个生成的文件起一个名,例如id_rsa_new.步骤如图中所示。
- 执行ssh-agent让ssh识别新的私钥 (重要******)
命令为下面两步:
1 #Start the 'ssh-agent.exe' process 2 eval $(ssh-agent -s) 3 #install the SSH keys 4 ssh-add ~/.ssh/id_rsa_new
- 配置多个账户的~/.ssh/config文件(config文件没有后缀名)
1 # 该文件用于配置私钥对应的服务器 2 # first user 3 Host git@github.com 4 HostName https://github.com 5 User git 6 IdentityFile ~/.ssh/id_rsa 7 8 9 10 #second user 11 Host git@code.aliyun.com 12 HostName https://code.aliyun.com 13 User git 14 IdentityFile ~/.ssh/id_rsa_new
三、把公钥添加到SSH KEYS
方法为:
在github找到Settings->SSH and GPG keys。然后添加
四、测试是否成功
用命令ssh -T git@github.com
成功的话,会返回包含Hi XXXXX! You've successfully authenticated的字符串。
五、特别注意:github提交之后,contribution没有提交记录的小绿点问题
原因
这里,因为取消了全局的用户名和密码,在本地进行提交时,github不能将本地仓库对应的提交者和远程github账号对应的用户对应起来,所以就不记录了。
可以通过在仓库根目录下git log查看提交记录,会发现有一些提交用户名和邮箱和GitHub的账号不对应。
解决办法
1 # 1.进入到需要修改的仓库中 2 git config user.name GitHub的用户名 3 git config user.email GitHub的登录邮箱
总结:以上步骤可以使本机电脑先后配置两个Git账户,昨天想在家里电脑(原本配置过一套Git账户)配置一套公司的Git仓库遇到的问题,亲测有效。
本篇文章转载自:https://blog.csdn.net/qq1332479771/article/details/70149616