【超详细】使用Git上传本地文件夹到GitHub main branch

最近对Tensorflow-Object-Detection-Tutorial进行更新,想把本地建好的文件夹上传到main brach而不是master brach。

一、新建仓库(Repository)

在GitHub上登陆你的账号。点击“New repository”并填入相关信息。

本文不详细介绍如何新建仓库,需要的话可以查看:

三、下载和安装Git

本文使用Git将本地文件夹上传至GitHub,因此要提前下载好Git。以下是下载链接:

安装过程不用在意勾选什么,一直点击Next即可。

四、创建SSH密钥

进入你刚刚创建的仓库,找到

默认情况下是没有配置SSH密钥的,你会看到一个"add new ssh key"的链接(上面图片没有这个链接,因为我已经配置好了),点进去。

你将看到一个添加SSH Key的页面,如下图所示。

到了这一步,我们还没拥有自己的SSH密钥,需要使用Git来生成。

打开“Git”,然后输入

$ ssh-keygen -t ed25519 -C "your_email@example.com"

注意替换成你在GitHub上使用的邮箱。执行上述指令后,一直按确定键即可,完成后找到SSH安装在你电脑上的位置。默认情况下,它是在“C:Usershost.ssh”,你将看到两个文件。

选中第二个文件(.pub),右键选择“写字板”打开,复制所有内容,填写到Key中。上面的Title随便写一个就可以。完成后,点击“Add SSH Key”。

返回你的仓库,如果"Code-SSH"里面已经不是空白的,说明已经成功添加了SSH密钥。

五、准备本地文件夹

再次强调,本文针对的是将本地文件夹上传到main分支,即整个仓库里面只有main branch而没有master brach,如下图所示。

也许有同学问,“我为什么要这样做?” 只能说,目前这种做法比较流行,它可以帮助其他用户快速找到所需要的文件。如果你觉得上传到master也无伤大雅,可以按照以下链接进行操作。

回到正题。要将文件夹上传到main branch,就是要把本地的文件夹和在线仓库中的文件整合到一起。按照这个思路,我们可以借助本地计算机(也就是你的电脑),把文件放一块。

步骤一:git clone repository

从GitHub中复制仓库的https,如下图所示:

在本地计算机新建一个空白文件夹,打开文件夹并在空白处点击右键,选择“Git Bash Here”。接着,在打开的Git窗口中输入:

git clone https://github.com/icexiaoyou/tensorflow-object-detection-tutorial.git

注意更换clone后面的https。

步骤二:文件整合

上述操作完成后,你将在新建的文件夹中看到你的仓库文件夹。此时,复制你在本地制作好的所有文件,放到这个仓库文件夹(注意不是新建的空白文件夹)中。例如,在我完成这个步骤之后,我的文件结构是:

source ensorflow-object-detection-tutorialmodels

source ensorflow-object-detection-tutorialprotoc-3.19.4-win64

source ensorflow-object-detection-tutorialworkspace

source是我刚刚新建的空白文件夹,tensorflow-object-detection-tutorial是使用git clone从GitHub下载的文件夹,而第三级文件和文件夹是我打算上传到GitHub上的东西。

六、上传本地文件夹到GitHub

关闭之前所有打开的Git窗口。

打开整合后的仓库文件夹(如“source ensorflow-object-detection-tutorial”),右键点击空白处,选择“Git Bash Here”。依次执行以下命令:

$ git init    # 初始化,在本地文件夹中生成.git隐藏文件夹
$ git add .     # 添加本地文件夹中所有的文件
$ git commit -m "create new file"    # 为所要上传的文件添加说明,引号中的内容可修改
$ git push origin main    # 将文件上传至main branch

上述操作完成后,刷新GitHub,就可以看到本地文件夹已经上传到GitHub Repository了!

七、Debug

欢迎在评论区提出你的疑问。

网站链接:

我是Tensorflow、GitHub和小白,敬请支持!

经验分享 程序员 微信小程序 职场和发展