因为上班使用的是公司的电脑,但是在需求开发前有时会需要写一些小的 demo ,所以研究了一下一个电脑如何配置两个 git 账号,这样就可以用自己的项目写 demo 了。
具体实现的步骤整理如下:
-
查看是否已经配置过全局的 git 账号:git config --global user.name/user.email
- 若配置过全局的账号,则清除全局的账号:git config --global --unset user.name/user.email
-
生成各个帐户的密钥:
- 进入保存密钥的目录:cd ~/.ssh
- 根据帐户邮箱生成密钥:ssh-keygen -t rsa -C "xxx@xx.com"
- 回车后会提示输入密钥文件名,例:id_rsa_github(默认为id_rsa)
- 设置密码可以直接回车,直到密钥生成
- 打开 .ssh 密钥目录下可以看到两个文件 id_rsa_github 和 id_rsa_github.pub
- 其它仓库采取相同方法进行密钥生成
密钥生成成功返回如下图所示:
- 将密钥添加到本地:
-
- ssh-add ~/.ssh/id_rsa_github | ssh-add ~/.ssh/id_rsa_gitlab | ssh-add ~/.ssh/id_rsa_gitee
- 检验是否成功:ssh-add -l (返回信息下图即为成功)
-
对本地密钥进行配置:
-
在 .ssh 文件下新建一个 config 文件:touch config
-
内容如下:(以 gitee 为例前面生成过几个帐户,写几组)
Host gitee
HostName gitee.com
User "你的账号"
IdentityFile ~/.ssh/id_rsa_gitee
-
-
将公钥添加到托管网站:
- 打开 .ssh 文件夹:open .ssh
- 找到对应 git 网站的 .pub 文件,选择文本编辑打开,复制全部内容
- 打开对应的 git 网站,配置 ssh 密钥,将复制的内容全部粘贴即可,名称可自己取
-
使用:(主要是克隆远程仓库的项目)
- 第一种方法:将 git clone gitlab.com/...... 更改为 git clone https://gitlab/.....
- 第二种方法: git clone https://用户名@gitlab.com/.....