git管理多账号
管理多个git账号
1、查看已配置的Git账号列表
git config --list
2、查看是否已经配置过全局用户名和邮箱
git config --global user.name
git config --global user.email
3、生成SSH keys
- 生成gitlab秘钥,名字id_rsa_github自定义起
cd ~/.ssh
ssh-keygen -t rsa -C "xxx@xx.xom"
Enter file in which to save the key (/Users/xx/.ssh/id_rsa):id_rsa_gitlab - 生成github秘钥
cd ~/.ssh
ssh-keygen -t rsa -C "xxx@xx.xom"
Enter file in which to save the key (/Users/xx/.ssh/id_rsa):id_rsa_github
4、将私钥添加到本地
ssh-add ~/.ssh/id_rsa_github
ssh-add ~/.ssh/id_rsa_gitee
ssh-add ~/.ssh/id_rsa_gitlab
1)这一步如果报以下错误:

使用如下命令:
eval `ssh-agent -s`
2)错误2:
git@github.com: Permission denied (publickey).
fatal: Could not read from remote repository.
# 解决方式:
ssh-agent bash
ssh-add -l # The agent has no identities 则上面未add成功
ssh-add ~/.ssh/id_rsa_xxx
ssh -T git@github.com # 提示successfully
5、查看已添加的密钥
ssh-add -l
6、 vim ~/.ssh/config
Host github1 // 网站的别名,自己取
HostName github.com // 托管网站的域名
User xxx1 // 托管网站上的用户名
IdentityFile ~/.ssh/id_rsa_github_xxx1 // 使用的密钥文件
Host github2 // 网站的别名,自己取
HostName github.com // 托管网站的域名
User xxx2 // 托管网站上的用户名
IdentityFile ~/.ssh/id_rsa_github_xxx2 // 使用的密钥文件
7、将公钥添加到托管网站
vim id_rsa_github.pub的内容加入到对应网站的ssh配置部分
8、使用网站域名测试
ssh -T git@github.com
9、远程clone的代码不需要在配置用户名和邮箱,本地仓库往远程仓库提交代码时
需在本地项目仓库下先配置用户名和邮箱和修改本地仓config信息
git config user.name "xxx"
git config user.email "xxx@xx.com"
cd .git // 切换到.git目录
vim config
[remote "origin"]
url = git@gitlab:xx/xxx.git
fetch = +refs/heads/*:refs/remotes/origin/*
设置多Git账户的核心内容是为不同的Git设置不同的秘钥并分别配置,仓库中的关键是要配置好用户名和邮箱,以及使用别名。

浙公网安备 33010602011771号