前提

已安装Git

清除 Git 的全局配置

  • 打开 Git Bash

  • 输入下面命令查看 Git 的全局配置

    1
    2
    git config user.name
    git config user.email
  • 如果配置了 Git 全局变量,请删除该配置

    1
    2
    git config --global --unset user.name "你的名字"
    git config --global --unset user.email "你的邮箱"

生成新的 SSH 密钥

密钥存放位置

  • 默认文件夹 c:\用户\user\.ssh
  • zxiaosi@vip.qq.com 改为自己的邮箱

Github 密钥

  • 生成 Github 密钥

    1
    ssh-keygen -t rsa -f ~/.ssh/id_rsa.github -C "zxiaosi@qq.com"
  • 连按两次回车,设置为无密码

Gitee 密钥

  • 生成 Gitee 密钥

    1
    ssh-keygen -t rsa -f ~/.ssh/id_rsa.gitee -C "zxiaosi@vip.qq.com"
  • 连按两次回车,设置为无密码

文件目录

  • 完成之后会在 c:\用户\user\.ssh 生成以下目录

配置 config

  • 创建 config 文件

    1
    touch ~/.ssh/config
  • config 需要填写以下内容

    Host:它涵盖了下面一个段的配置,我们可以通过他来替代将要连接的服务器地址。

    Port:自定义的端口。默认为22,可不配置

    User:自定义的用户名,默认为git,可不配置

    HostName:真正连接的服务器地址

    PreferredAuthentications:指定优先使用哪种方式验证,支持密码和秘钥验证方式

    IdentityFile:指定本次连接使用的密钥文件

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    # github
    Host github.com
    HostName github.com
    User git
    IdentityFile ~/.ssh/id_rsa.github

    # gitee
    Host gitee.com
    Port 22
    HostName gitee.com
    User git
    IdentityFile ~/.ssh/id_rsa.gitee

添加 ssh 密钥

Github 添加 ssh 密钥

  • 直达地址

  • 点击 Settings

  • 点击 SSH and GPG keys –> 点击 New SSH key

  • 填写密钥的名字 –> 复制 id_rsa.github.pub 文件里内容

  • 测试连接

    1
    ssh -T git@github.com
  • 连接成功

Gitee 添加 ssh 密钥

  • 直达地址

  • 点击 设置

  • 点击 生成SSH公钥 –> 填写公钥的名字 –> 复制 id_rsa.gitee.pub 文件里内容

  • 测试连接

    1
    ssh -T git@gitee.com
  • 连接成功

使用

  • 在本地上传文件时,会报不知道用户是谁的错误

  • 此时需要配置 local 用户名和邮箱,而不是 global。到项目文件夹下配置邮箱和用户名

    1
    2
    git config --local user.name '你的名字'
    git config --local user.email '你的邮箱'