Bootstrap

基于 SSH 协议配置 Git 连接 GitHub

0.安装 Git

Git 官网链接:https://git-scm.com/

Git 官网下载链接:https://git-scm.com/downloads

1.注册 GitHub 账号

GitHub 官网链接:https://github.com/

2.配置 Git 的用户名和邮箱

因为 Git 是分布式版本控制系统,所以需要填写用户名和邮箱作为一个标识。

建议 Git 的用户名和邮箱与 GitHub 的用户名和邮箱保持一致,具体原因参考这篇文章

git config --global user.name "你的用户名"
git config --global user.email "你的邮箱"

在这里插入图片描述

如下图所示,配置好的 Git 的用户名和邮箱存储在 C:\Users\账户名 目录下的 .gitconfig 文件中,可以使用如下命令查看。

git config --list

在这里插入图片描述

3.远程连接 GitHub 有两种传输协议

在这里插入图片描述

HTTPS:需要个人访问令牌。即使没有配置个人访问令牌,也是可以 git clone 的,但是 git push 的时候需要输入用户名和个人访问令牌。

SSH:需要密钥对。如果没有配置密钥对,既不能 git clone,也不能 git push。

注意:由于访问 GitHub 的网络原因,走 HTTPS 协议可能会出现 git push 失败。如果是自己的个人项目,建议走 SSH 协议!

4.基于 SSH 协议配置 Git 连接 GitHub

4.1 为本机生成 SSH 密钥对

首先,执行如下命令,生成 SSH 密钥对。

ssh-keygen -t rsa -C "本机标识"

上面命令中的 -C 只是给产生的密钥对加了一个注释,建议填写跟当前机器相关的内容,具体原因参考这篇文章

在这里插入图片描述

生成的 SSH 密钥对存储在 C:\Users\账户名\.ssh 目录下,如下图所示。

在这里插入图片描述

接着,将 id_rsa.pub 公钥里的内容复制到剪贴板,可以执行如下命令去复制,也可以打开 C:\Users\账户名\.ssh\id_rsa.pub 文件去复制。

clip < ~/.ssh/id_rsa.pub

在这里插入图片描述

4.2 将公钥拷贝到 GitHub 上

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

4.3 SSH 测试

执行如下命令,初次设置需要输入 yes,出现 successfully 表示成功,如下图所示。

ssh -T [email protected]

在这里插入图片描述

4.4 有两种方法将本地仓库和远程仓库关联起来

4.4.1 第一种方法:为本地仓库添加远程仓库

首先,准备好想要关联的远程仓库,即在 GitHub 上创建一个远程仓库,如下图所示。

在这里插入图片描述

在这里插入图片描述

然后,执行如下命令,初始化一个本地仓库,如下图所示,多出了一个隐藏文件夹 .git,并默认进入主分支 main

git init

在这里插入图片描述

然后,将想要上传的文件放到这个本地仓库文件夹下。

接着,执行如下命令,将文件添加到本地暂存区。

git add .

在这里插入图片描述

如果出现这个警告“LF will be replaced by CRLF the next time Git touches it”,可以直接忽略,具体原因参考这篇文章

接着,将文件提交到本地版本库。

git commit -m "注释"

在这里插入图片描述

然后,复制远程仓库的 SSH 地址,执行如下命令,为本地仓库添加指定的远程仓库,这样便将本地仓库与远程仓库关联起来了。

git remote add origin 远程仓库的SSH地址

关于 git remote add 命令可以参考这篇文章

在这里插入图片描述

然后,执行如下命令,将文件上传到 GitHub 的远程仓库。

git push -u origin main

关于 git push -u 命令可以参考这篇文章

在这里插入图片描述

4.4.2 第二种方法:克隆远程仓库到本地

首先,在 GitHub 上创建一个想要的远程仓库,如下图所示。

在这里插入图片描述

在这里插入图片描述

然后,复制远程仓库的 SSH 地址,右键打开 Git Bash,执行如下命令,将远程仓库克隆到本地。

git clone 远程仓库的SSH地址

如下图所示,本地上多出了一个仓库(自带隐藏文件夹 .git),这个本地仓库是通过 git clone 而来的,它已经跟 GitHub 上的远程仓库相关联了,所以就省去了 git init、git remote add 等操作。

在这里插入图片描述

然后,将想要上传的文件放到这个本地仓库文件夹下,进入本地仓库目录,依次执行如下命令,将文件添加到本地暂存区并提交到本地版本库。

git add .
git commit -m "注释"

在这里插入图片描述

如果出现这个警告“LF will be replaced by CRLF the next time Git touches it”,可以直接忽略,具体原因参考这篇文章

最后,执行如下命令,将文件上传到 GitHub 的远程仓库。

git push -u origin main

在这里插入图片描述

5.基于 HTTPS 协议配置 Git 连接 GitHub

教程链接:基于 HTTPS 协议配置 Git 连接 GitHub

;