1. Git 多用户
1.1 清除全局配置
首先查看git的全局配置,
git config --global --list
会列出git全局的name和email信息,可执行以下命令进行清除
git config --global --unset user.name
git config --global --unset user.email
1.2 生成 SSH 公私钥
钥匙文件默认在~/.ssh目录,可以先清理目录中的id_rsa,id_rsa_pub之类的文件。
然后通过指令生成新的钥匙对文件
ssh-keygen -t rsa -C "gitee账号邮箱"
回车后,会有以下提示,
Generatingpublic/privatersa key pair.Enter fileinwhich to save the key (/Users/xxxx/.ssh/id_rsa):
这里是让输入公钥名称,默认是id_rsa,因为我们是配置多用户,为了更好的区分,这里输入id_rsa_gitee。之后一路回车,gitee的钥匙对生成完毕。
1.3 将公钥在Gitee里添加
将生成的id_rsa_gitee.pub 文件中的内容,分别加入到gitee的SSH KEY中。
1.4 配置 config 文件
打开 .ssh 目录,编辑 config 文件 (如果没有就新建一个)
然后增添一个配置(每个配置之间隔一行)
Host gitee_okfang
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_okfang_rsa
User okfang
Host xxxxx "别名,到时候clone时@后面跟的"
HostName xxxxx "服务商域名"
PreferredAuthentications publickey "鉴权方式"
IdentityFile ~/.ssh/xxxxxx "私钥路径"
User xxx "你在仓库里的名字"
1.5 clone 新姿势
最后,clone的时候选择 SSH 而不是 HTTPS
比如我们要克隆 https://gitee.com/xxx/git-study
只需要执行,即可。
git clone git@事先配置好的Host名字:xxx/git-study.git
1.6 配置仓库信息
进入clone好的仓库,打开仓库当前目录下的 .git 文件夹
编辑 config 文件,在最下面加一条(如果有就是修改)
[core]
repositoryformatversion = 0
filemode = false
bare = false
logallrefupdates = true
symlinks = false
ignorecase = true
[remote "origin"]
url = git@gitee_okfang:xxxxx/intelligent_school.git
fetch = +refs/heads/*:refs/remotes/origin/*
[branch "master"]
remote = origin
merge = refs/heads/master
[user]
name = okfang
email = lovefyj616@foxmail.com
要加(改)的内容:
[user]
name = okfang #你在仓库的昵称
email = lovefyj616@foxmail.com # 提交用的邮箱
在克隆的时候,如果遇到这种情况
在第一个问号处输入 yes
即可。