背景:工作和自用的git地址可能是不一样的,这样我们需要配置一下,以达到不同项目往不同git网址的仓库提交代码的能力
1、生成密钥
首先要做的就是取配置两个不同的sshkey(生成两种不同的密钥文件)
##工作用的git账号邮箱地址
$ ssh-keygen -t rsa -C 'xxxxx@company-use.com' -f ~/.ssh/id_rsa_company_use##自用账号的邮箱地址
$ ssh-keygen -t rsa -C 'xxx@yeah.net' -f ~/.ssh/id_rsa_owner
2、将密钥文件添加到ssh代理中(此步骤不可跳过)
ssh-add ~/.ssh/id_rsa_self_use ~/.ssh/id_rsa_company_use
3、git配置密钥
将产生的.pub结尾的密钥文件配置到“Settings”–>“SSH and GPG keys”–>“New SSH key”中(.pub文件和对应邮箱的git账号一一对应,配置错了会有提醒)
4、在对应的git地址上面拉取项目
使用地址git clone、直接用idea填写地址拉取、下载zip包解压
使用idea填写地址直接拉取很方便
5、在项目.idea同级路径下配置局部变量
#配置项目对应git账号用户名称
$ git config user.name "username"
#配置项目对应git账号邮箱
$ git config user.email "email"
#配置当前项目的关联仓库地址
$ git remote add origin git@gitee.com:用户名/仓库.git
#如果上一步执行提示已经关联(https形式的改为git形式),可执行
$ git remote set-url origin git@gitee.com:用户名/仓库.git
6、配置config文件
$ cd ~/.ssh
$ vim config
填写自己对应的配置
#示例
Host github.com
HostName github.com
User 你的git用户名
IdentityFile 你生成的私钥,例如上面示例生成的:~/.ssh/id_rsa_owner
每个项目配置好了之后,之后可以随意切换项目进行push了
7、测试配置
$ ssh -T git@github.com
Hi xxx! You've successfully authenticated, but GitHub does not provide shell access.