如何在GitHub上上传文件夹

79

我要如何上传文件夹到GitHub?我的所有代码都在一个包含98个文件的文件夹中,位于我的桌面上。我知道如何上传单个文件,但是否有一种方法可以上传整个文件夹呢?

谢谢!


2
只需使用 Git 提交并推送文件夹即可。 - larsgrefer
5
我认为你并不完全理解GitHub的工作原理。在网站上“上传”文件到你的GitHub存储库并不是一种正确的方式。你的存储库是一个GIT存储库,这意味着你可以使用任何现有的git客户端上传任何类型的文件或文件夹。如果你前往这里:https://desktop.github.com/,你会更好地理解它。这是与GitHub进行交互的桌面客户端。祝你编程之旅愉快! - SzybkiSasza
1
如果您想通过Web完成操作,那么您需要使用readme.md文件来启动repo,然后上传它。而在Github桌面版中,您只需将其拖入即可。 - Giacomo
5个回答

114

这是一个GitHub存储库的Web GUI:

enter image description here

把你的文件夹拖到上面的区域。当你上传太多的文件夹/文件时,GitHub会提醒你:
“哇塞,这是很多文件啊。请尝试少于100个文件。”

enter image description here

并添加提交消息

enter image description here

而按下按钮提交更改是最后一步。


2
使用GitHub桌面版怎么样? - user7485924
1
复制并粘贴到 Git 本地目录/文件夹。 - Raphaël Colantonio

43

你也可以使用命令行,切换到你的文件夹所在目录,然后输入以下命令:

git init
git add <folder1> <folder2> <etc.>
git commit -m "Your message about the commit"
git remote add origin https://github.com/yourUsername/yourRepository.git
git push -u origin master
git push origin master  

4
我理解你的意思。
@James Graham 提供的解决方案在某些情况下可能无法使用。拖放功能可能会停止工作。如果出现这种情况,请参阅下面的链接: https://www.reddit.com/r/github/comments/meuxtg/github_drag_and_drop_not_working/ 如果有人想避免使用 shell 和所有命令,而是想要一个 UI 来实现这一点,Github Desktop 是其中一种方法。
安装和使用 Github Desktop 的步骤如下:
我假设你知道本地仓库和远程仓库之间的区别。
1. 安装Github Desktop 2. 使用 Github Desktop 在硬盘上创建一个本地仓库。这将自动创建 .git 和 .gitattributes 等文件。它还会要求创建一个 README.md 文件。最好的做法是创建并编辑此文件,向读者介绍项目概述、安装步骤等。README.md 采用 Markdown 渲染,并且可以渲染 HTML。有关 Markdown 的更多信息,请查看Markdown Cheatsheet guide 3. 将您要上传(基本上正确术语为 "Push")的所有文件和文件夹复制并粘贴到这个新创建的本地仓库中。请注意目录结构,因为完全相同的目录结构将在您的远程仓库中复制。 4. 进入 Github Desktop,当您在本地仓库中粘贴文件时,您将在此处看到它们作为更改。您只需使用注释提交这些更改。这将是您对该仓库的“首次或初始提交”。 5. 接下来,Github 仓库会询问您是否要将其发布到其远程仓库。单击 "Publish" 。请注意,发布只是一次性操作。从现在开始,您对本地仓库做出的任何进一步更改都将在 Github Desktop 中显示,并且您需要再次遵循"提交本地 - > 从远程获取 - > 推送到远程"的循环。只要您是项目上唯一的开发人员,您就无需进入 git 分支等其他机制。 6. 要验证您的仓库是否已在远程发布,请登录到网页上的 github 个人资料并查看您的存储库。这是您通过使用 Github Desktop 从本地仓库有效地创建的远程仓库。

1
我刚刚又进行了一遍这个过程。最终总是克隆本地repo,将我想要放在那个repo中的文件夹上传到该克隆位置,提交更改,然后推送它。
请注意,如果您处理大文件,需要考虑使用类似Git LFS的东西。

0

对于仍在使用master的用户,现已更改为main

echo "# repo-name" >> README.md
git init
git add README.md
git commit -m "first commit"
git branch -M main
git remote add origin https://github.com/username/repo-name.git
git push -u origin main

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接