【配置】Win10配置Git和SSH
1 Git配置
打开Git Bash,配置用户信息,
1 | # 配置用户名和邮箱 |

2 SSH配置
Git和GitHub之间可以通过HTTPS、SSH、GitHub CLI等形式来连接,这里我们使用SSH方式连接。
SSH登录安全性由非对称加密保证,产生密钥时,一次产生两个密钥,一个公钥,一个私钥,在Git中一般命名为id_rsa.pub, id_rsa。公钥放到远程主机,私钥保存在本地。
当本地主机需要登录远程主机时,①本地主机向远程主机发送一个登录请求,②远程收到消息后,随机生成一个字符串并用公钥加密,发回给本地。③本地拿到该字符串,用存放在本地的私钥进行解密,再次发送到远程,④远程比对该解密后的字符串与源字符串是否等同,如果等同则认证成功。
执行下面命令生成ssh密钥文件,会提示你指定保存路径(默认是C:/Users/当前用户/.ssh/id_rsa
),然后确认密码。使用默认配置可以直接回车跳过,但是并不推荐,如果之前生成过密钥文件,会提示覆盖。这边指定了保存路径为C:/Users/当前用户/.ssh/id_rsa.github
。
1 | # 生成 ssh 密钥 |

在GitHub设置里点击New SSH key
添加公钥,在Title
中填写名称,方便区分,接着以文本方式打开之前生成的.pub
公钥文件,Ctrl + A
全选,然后复制内容并粘贴到Key
中,点击Add SSH key
,确认GitHub密码后,完成配置。

在默认保存路径C:/Users/当前用户/.ssh/
下,创建一个名为config
的文件,输入以下内容,IdentityFile
后面是之前配置的密钥的路径。如果之前保存过其它SSH密钥,可以依照相同格式进行配置。然后回到Git Bash,执行chmod 600 ~/.ssh/config
添加读写权限。
1 | # github |
测试配置,出现successfully authenticated
说明成功
1 | # 测试配置 |

如果提示Could not resolve hostname github.com: No address associated with hostname
,使用IPAddress查询GitHub真实IP地址,然后添加到C:\Windows\System32\drivers\etc\hosts
文件中。
1 | 140.82.114.4 github.com |

推荐使用114DNS,可以避免此情况,也无需改动hosts文件。