共计 1023 个字符,预计需要花费 3 分钟才能阅读完成。
多用户配置
公司和 github, 常常会遇到要多用户应用 git 的状况, 以下为配置信息, 以下拿 xiaoxuete1 & xiaofute2 举例
设置 ssh-key
ssh-keygen -t rsa -C "xiaofute1@mail.com"
- 会提醒存储的文件名,输出
- 如果须要 push 时确认的明码,可在该步骤输出
- .pub 文件内容复制到 github 的 ssh-key 配置中( 勿忘,否则连贯不上 )
配置 config 文件
新建 config 文件,用来指定不同的用户读取的 rsa 文件 // 正文局部须要删除
# Default user | |
Host coding // host 地址对应的别名,切换用户应用该名称 | |
HostName xxx.xx.xx.xx // host 地址 我这里填的是公司搭建的 git 仓库的 ip 地址 | |
User xiaofute1 | |
IdentityFile ~/.ssh/id_rsa_default // ssh-key 文件地址 默认只会读取 id_rsa | |
# second user | |
Host github | |
HostName github.com | |
User xiaofute2 | |
IdentityFile ~/.ssh/id_rsa_github |
切换用户
// 这里就用到了配置文件中的 host 对应的字段 | |
ssh -T git@github | |
// 输入示意胜利 | |
Hi xiaofute2! You've successfully authenticated, but GitHub | |
does 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
后须要配置该本地仓库的用户信息
正文完