git 多账号配置 mac和windows10 记录一下


公司电脑和家里电脑,多账号多平台多环境上的项目,如何配置多账号git的pull和push?

一  window10上配置:

1. 在C:/Users/your_user_name/.ssh文件夹中 生成 SSH 公钥和私钥

ssh-keygen -t rsa -b 4096 -C "xxx@xxx.com" 
# 回车时,将默认的id_rsa重命名成id_rsa_xxx
# 生成2个文件,有.pub 的是公钥,没有则是私钥

2. 将公钥分别添加至对应的服务器上

// 通常配置在服务器的:设置=》SSH公钥 
// 输入一个备注名称,粘贴进KEY

3. 在C:/Users/your_user_name/.ssh文件夹中创建config文件

# gitee平台 注意里面的 gitee
Host gitee.com
HostName gitee.com
IdentityFile C:Usersl.sshid_rsa_XXX
PreferredAuthentications publickey
User gitee_username

4. 测试

# 服务器是哪个测试哪个
ssh -T git@github.com
ssh -T git@gitee.com
# Hi XXX! You've successfully authenticated, but GITEE.COM does not provide shell access.
# 以上表示成功

# 拉取
git clone git@gitee.com:xxx/xxx.git
# 修改个文件后测试push权限 git add . git commit -m 'remark' git push
# 不成功 可能要配置以下第5项

5. 配置局部或全局变量(提交时的账号和用户名)

# 进入相应Git项目中,输入如下命令
git config user.name "your_name"
git config user.email "your_email@xxx.com"

# 查看
git config user.email
git config user.name
# 如果没有局部Git账号则会用全局Git账号(建议局部) # 查看全局 git config --global user.name git config --global user.email # 配置全局 git config --global user.name "your_name" git config --global user.email "your_email@xxx.com" # 删除全局 git config --global --unset user.name git config --global --unset user.email

二  MAC上配置:(跟window有点不同)

1. 在.ssh文件夹中 生成 SSH 公钥和私钥

# mac的.ssh文件夹目录在:
cd ~/.ssh
# 生成
ssh-keygen -t rsa -C "XXX@XX.xom"

2. 配置公钥,同上面的2

    并且注意:私钥添加到本地

ssh-add ~/.ssh/id_rsa_XXX
// 为了检验本地是否添加成功,可以使用ssh-add -l命令进行查看
ssh-add -l
// 可以看到较之前多了一行

3. 配置config文件,同上面的3

4. 测试同上面的4

5. 全局配置同上面的5

注:

cat ~/.ssh/id_rsa.pub #查看公钥用

MAC版参见:

https://gitee.com/help/articles/4181#article-header0

https://juejin.cn/post/6844903880837300238

原文地址:https://www.cnblogs.com/xiangsj/p/14684274.html