多用户配置

公司和github,常常会遇到要多用户应用git的状况,以下为配置信息,以下拿xiaoxuete1 & xiaofute2举例

设置ssh-key

ssh-keygen -t rsa -C "xiaofute1@mail.com"
  • 会提醒存储的文件名,输出
  • 如果须要push时确认的明码,可在该步骤输出
  • .pub文件内容复制到github的ssh-key配置中(勿忘,否则连贯不上

配置config文件

新建config 文件,用来指定不同的用户读取的rsa文件 // 正文局部须要删除
# Default userHost coding  // host地址对应的别名,切换用户应用该名称HostName xxx.xx.xx.xx // host地址 我这里填的是公司搭建的git仓库的ip地址User xiaofute1 IdentityFile ~/.ssh/id_rsa_default  // ssh-key文件地址 默认只会读取id_rsa# second userHost githubHostName github.comUser xiaofute2IdentityFile ~/.ssh/id_rsa_github

切换用户

// 这里就用到了配置文件中的host对应的字段ssh -T git@github // 输入示意胜利Hi xiaofute2! You've successfully authenticated, but GitHubdoes not provide shell access.

验证出错

验证过程中呈现 Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password).

删除 known_hosts 文件。执行以下命令

ssh -T -v git@xxx.xx.xx.xx

用户名配置

全局

git config --global user.name "xiaofute1"git config --global user.email "xiaofute1@mail.com"

本地

本地仓库文件夹下配置用户名 会在以后仓库中提交试用该用户信息提交,笼罩全局的配置、
git config  user.name "xiaofute2"git config  user.email "xiaofute2@mail.com"
  • 因为我的全局配置的为default user的用户名和邮箱,在github上的commits history中会link不到用户,所以每次git init 后须要配置该本地仓库的用户信息