1. git config 详解
1.1. 初始化操作
// sudo -Hu www 使用 www 用户执行 [不同用户下的全局配置]
git config --global user.name "alonexy"
git config --global user.email alonexy@qq.com
1.2. 长期存储密码:
git config --global credential.helper store
1.2.1. 分别配置github && gitee
ssh-keygen -t rsa -C "alonexy@qq.com" -f ~/.ssh/github_id_rsa
ssh-keygen -t rsa -C "alonexy@qq.com" -f ~/.ssh/gitee_id_rsa
在~/.ssh文件夹下新建config文件,添加以下内容
# gitee
Host gitee.com
HostName gitee.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/gitee_id_rsa
# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/github_id_rsa
1.2.2. Tset Config
###
执行 ssh -T git@github.com
如果返回 Hi alonexy! You've successfully authenticated, but GitHub does not provide shell access.
则github配置成功.
执行 ssh -T git@gitee.com 如果返回successfully则gitee配置成功.
1.2.3. 针对gitee 配置多个账号(公司和个人)
ssh-keygen-t rsa -C 'alonexy@company.com' -f ~/.ssh/gitee_company_id_rsa
## 在config 添加
Host giteeCompany
HostName gitee.com
User alonexy@company.com
IdentityFile ~/.ssh/gitee_forPersonal_id_rsa
- HostName 对应的域名地址
- IdentityFile 这里是id_rsa的地址
- PreferredAuthentications 配置登录时用什么权限认证--可设为publickey,password publickey,keyboard-interactive等
- User 配置用户名
- 每个账号单独配置一个Host,每个Host要取一个别名,每个Host主要配置HostName和IdentityFile两个属性即可
- Host的名字可以取为自己喜欢的名字,不过这个会影响git相关命令,例如以上的配置:
Host giteeCompany 命令如下,即git@后面紧跟的名字改为 giteeCompany
git clone git@giteeCompany:XXX/project.git
解除原git的全局账号设置:
git config --global --unset user.name
git config --global --unset user.email
项目里设置具体的账号
git config user.name "Your name"
git config user.email your_email@gmail.com
对已有的项目 需要更换remote
git remote -v # 查看
## 删除原有的origin
git remote remove origin
## 新增
git remote add origin git@giteeCompany:XXX/project.git