查看本机是否已经生成ssh key, 如果已存在,先移除。
使用ssh-keygen生成github的sshkey,并且重命名为id_rsa_github(一直回车,不要输入密码。如果输入密码,每次提交都需要输入密码)
$ ssh-keygen -t rsa -C "your_email@email.com" -f ~/.ssh/id_rsa_github
生成gitlab的sshkey,并且重命名为id_rsa_gitlab
$ ssh-keygen -t rsa -C "your_email@email.com" -f ~/.ssh/id_rsa_gitlab
配置ssh代理
// 查看系统ssh-key代理
$ ssh-add -l
// 如果系统已经有ssh-key 代理 ,执行下面的命令可以删除
$ ssh-add -D
添加ssh agent
// 把 ~/.ssh 目录下的2个私钥添加的 ssh-agent
$ ssh-add ~/.ssh/id_rsa_github
$ ssh-add ~/.ssh/id_rsa_gitlab
// 在 .ssh 目录创建 config 配置文件
$ vim ~/.ssh/config
如果提示权限问题, 先运行ssh-agent bash 命令后再执行 ssh-add;或者直接修改权限
$ chmod 700 ~/.ssh/id_rsa_github
$ chmod 700 ~/.ssh/id_rsa_gitlab
配置文件config添加以下内容
# github 配置
Host github
HostName github.com
User git
IdentityFile ~/.ssh/id_rsa_github
# gitlab配置(HostName为公司的git网址,User为用户名)
Host gitlab
HostName gitlab.xxx.com
User git
IdentityFile ~/.ssh/id_rsa_gitlab
配置git仓库用户名和邮箱
$ git config –global user.name “global_username”
$ git config –global user.email “global_email.com”
可以为每个git仓库配置单独的用户名和邮箱,没有配置的则使用全局的用户名和邮箱
//转到git仓库
$ cd /User/Sooo/sooo-git
//配置用户名和邮箱
$ git config user.name "username"
$ git config user.email "email@email.com"
//查看git配置
$ git config --list
配置ssh key到github和gitlab上(略)