# 事件背景
参与开发的某项目为某大厂的开源项目,由于一些原因,有些需求开源主仓库不进行开发,内部独自进行开发,所以向上面申请了一个gitlab仓库,然后本地再添加一上游仓库:
git remote add [repo_name] [repo_url]
推代码的时候报错:
error: failed to push some refs to XXX.git
# 问题排查
查看报错信息,其中有:
remote: A default branch (e.g. master) does not yet exist for 。。。
remote: Ask a project Owner or Maintainer to create a default branch:
! [remote rejected] local_branch_name -> remote_branch_name (pre-receive hook declined)
然后去到gitlab仓库中查看自己账号的角色为:Developer
看到这里问题已经清晰了,原因为该仓库为新建空白仓库,没有默认分支,而我的账号所拥有的的角色并没有创建默认分支的权限
该问题是gitlab的一个特性
# 解决方案
申请把角色改成Maintainer