【超详细】使用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和小白,敬请支持!
