mac使用ssh配置多用户

134 阅读1分钟

打开本地ssh文件

open ~/.ssh

新建两个ssh

//公司
ssh-keygen -t rsa -C XXX
个人github
ssh-keygen -t rsa -C GitHub

私钥添加到本地

ssh-add ~/.ssh/XXX 
ssh-add ~/.ssh/GitHub

公钥添加到代码仓库

一般登陆进仓库,然后点击个人头像->设置->SSH就可以设置

image.png

私钥添加到本地

ssh-add ~/.ssh/XXX 
ssh-add ~/.ssh/GitHub

为了检验本地是否添加成功,可以使用ssh-add -l命令进行查看

image.png

配置ssh

在~/.ssh文件夹下新增config文件(touch config)(存在则直接打开)

#别名,随意取 
Host XXX 
# 代码仓库网站的域名 
HostName gitee.com 
#指定优先使用哪种方式验证,支持密码和秘钥验证方式 
PreferredAuthentications publickey 
User git
# 使用的密钥文件 IdentityFile ~/.ssh/id_rsa_Balopy_gitee 


#别名,随意取 
Host GitHub 
# 代码仓库网站的域名
HostName github.com 
#指定优先使用哪种方式验证,支持密码和秘钥验证方式 
PreferredAuthentications publickey 
User git
IdentityFile ~/.ssh/GitHub

⚠️注意点

HostName和User的设置一定要根据代码仓库支持的方式设置。可以去github或者gitlab的代码仓库直接看

image.png

image.png

测试连接

对应上面设置的别名
ssh -T GitHub

image.png

image.png

使用

假如本地已有仓库,直接改本地代码仓库的git的config文件

[remote "origin"]
	url = https://github.com/vuejs/vue.git
	fetch = +refs/heads/*:refs/remotes/origin/*

改成

[remote "origin"]
   url = git@github.com:vuejs/vue.git
   fetch = +refs/heads/*:refs/remotes/origin/*

假如要拉取新仓库代码 直接复制SSH链接 git clone即可

配合gauseen/gum使用

npm i -g @gauseen/gum

切换不同账号,使用ssh提交代码时切换账户名和email

$ gum list

Currently used name=gauseen email=gauseen@gmail.com
┌────────────┬─────────┬─────────────────────────┐
│ group-name │    name │                   email │
├────────────┼─────────┼─────────────────────────┤
│    global  │ gauseen │ gauseen@gmail.com       │
│    user1   │ li si   │ lisi@gmail.com          │
│    user2   │ wang er │ wanger@gmail.com        │
└────────────┴─────────┴─────────────────────────┘

参考博文:juejin.cn/post/684490…