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

results matching ""

    No results matching ""