Gitlab 创建空仓库,本地code push到远端失败,提示: A default branch (e.g. main) does not yet exist for pvc/synesis_manual
三个月没有写技术博客,但是这个问题真的困扰了很多次,我必须要记录在博客中,以防我下次又忘记了
问题表现:
Gitlab 创建空仓库后,执行命令 git push pvc main ,把本地已有的代码push到远端失败 ,提示:
A default branch (e.g. main) does not yet exist for pvc/synesis_manual,
![remote rejected] main -> main (pre-receive hook declined)
问题原因:
👉 你的 GitLab 仓库是空的,还没有默认分支(default branch)。 而你 git push 时虽然推送了 main 分支,但 GitLab 不允许非默认分支作为首次 push 创建默认分支,除非明确指定。
解决办法:
- 登录 GitLab 项目页面,在 Settings → Repository → Protected branches
- 新建一个 保护分支,这里我们新建
main分支

Perfect ✅