向 GitHub 上的存储库添加文件
通过浏览器添加到存储库的文件每个文件限制为 25 MiB。你可以通过命令行添加更大的文件,每个文件最大 100 MiB。有关详细信息,请参阅“使用命令行向存储库添加文件”。要添加大于 100 MiB 的文件,你必须使用 Git 大型文件存储。有关详细信息,请参阅“关于 GitHub 上的大型文件”。
你可以同时将多个文件上传到 GitHub。
如果存储库有任何受保护的分支,你无法使用 GitHub 编辑或上传受保护分支中的文件。你可以使用 GitHub Desktop 将你的更改移动到新分支并提交它们。有关详细信息,请参阅“关于受保护分支”和“在 GitHub Desktop 中提交和查看对项目的更改”。
你的存储库可能启用了推送规则集。推送规则集可能会基于某些限制阻止在存储库中创建新文件。推送规则集适用于存储库的整个 fork 网络。这意味着在根存储库中配置的任何推送规则集也将适用于存储库的每个 fork。有关详细信息,请参阅“关于规则集”。
注意
推送规则集处于测试阶段,可能会发生更改。
你的存储库可能受到推送保护的保护。使用推送保护,如果文件包含受支持的机密(例如令牌),GitHub 将阻止将文件上传到存储库。你应在尝试再次上传文件之前从文件中删除机密。有关详细信息,请参阅“使用推送保护”和“推送受推送保护阻止的分支”。
注意
Web UI 中的文件上传推送保护当前处于测试阶段,可能会发生更改。
-
在 GitHub.com 上,导航到存储库的主页。
-
在文件列表上方,选择添加文件下拉菜单,然后单击上传文件。或者,你可以将文件拖放到浏览器中。
-
要选择要上传的文件,请拖放文件或文件夹,或单击选择你的文件。
-
在“提交消息”字段中,输入一个简短而有意义的提交消息,描述你对文件所做的更改。你可以在提交消息中将提交归因于多个作者。有关详细信息,请参阅“使用多个作者创建提交”。
-
在提交消息字段下方,决定是将你的提交添加到当前分支还是添加到新分支。如果你的当前分支是默认分支,则应选择为你的提交创建一个新分支,然后创建一个 pull 请求。有关详细信息,请参阅“创建 pull 请求”。
-
单击建议更改。
使用命令行向存储库添加文件
你可以使用命令行将现有文件上传到 GitHub.com 上的存储库。
提示:你还可以 从 GitHub 网站将现有文件添加到存储库。
此过程假定你已经
- 在 GitHub 上创建了一个存储库,或者有一个由其他人拥有的现有存储库,你想为其做出贡献
- 在你的计算机上本地克隆了存储库
警告:切勿将敏感信息(例如密码或 API 密钥)git add
、commit
或 push
到远程存储库。如果你已经添加了此信息,请参阅“从存储库中删除敏感数据”。
-
在你的计算机上,将你想要上传到 GitHub 的文件移到克隆存储库时创建的本地目录中。
-
打开 终端终端Git Bash。
-
将当前工作目录更改为你的本地存储库。
-
暂存文件以提交到你的本地存储库。
$ git add . # Adds the file to your local repository and stages it for commit. To unstage a file, use 'git reset HEAD YOUR-FILE'.
-
提交你在本地存储库中暂存的文件。
$ git commit -m "Add existing file" # Commits the tracked changes and prepares them to be pushed to a remote repository. To remove this commit and modify the file, use 'git reset --soft HEAD~1' and commit and add the file again.
-
将你的本地存储库中的更改推送到 GitHub.com。
$ git push origin YOUR_BRANCH # Pushes the changes in your local repository up to the remote repository you specified as the origin