本地Git仓库推送到GitHub后文件不显示是什么原因?
问题原因
你遇到的问题核心是本地Git分支名与GitHub新仓库默认分支名不匹配:
- 本地通过
git init初始化的仓库默认主分支名为master - 2020年之后GitHub创建的新仓库默认主分支名为
main
你将本地master分支推送到远程后,GitHub仓库默认展示的是空的main分支,因此看不到你提交的本地文件。
解决方案
根据你的使用习惯可以选择以下任意一种方案:
方案1:将远程默认分支切换为master
适合希望继续使用master作为主分支名的场景:
- 打开你的GitHub仓库页面,点击顶部的「Settings」(设置)选项
- 在左侧侧边栏找到「Branches」(分支)分类
- 在「Default branch」(默认分支)模块,点击当前默认分支右侧的切换按钮,选择
master分支后保存设置 - 刷新仓库首页即可看到你推送的所有文件
方案2:将本地分支重命名为main对齐GitHub规则
适合希望和GitHub默认规范保持一致的场景,在本地项目目录下依次执行以下命令:
- 将本地
master分支重命名为main
git branch -M main
- 将本地
main分支推送到远程仓库
git push -u origin main
- (可选)不需要远程
master分支的话,可以执行命令删除:
git push origin --delete master
特殊情况处理
如果你创建GitHub仓库时勾选了「添加README」「添加.gitignore」「添加LICENSE」任意一个初始化选项,会导致远程仓库存在独立的提交历史,和本地提交历史不兼容,推送时会报错,此时先执行以下命令合并远程变更后再推送即可:
git pull origin main --rebase git push -u origin main
内容的提问来源于stack exchange,提问作者Stefano Fedele
相关产品推荐
相关产品推荐

