无法将文件推送到Git,原因是:无法推送某些引用

plupiseo  于 2022-11-20  发布在  Git
关注(0)|答案(3)|浏览(415)

我有一个目录,我想把它变成一个git项目。
我在gitlab中创建了一个新的项目,然后我做了以下操作:

git init
git remote add origin git@gitlab.com:a/b/c.git
git add .
git commit -m "Initial commit"
git push -u origin master

此外,我还创建了以下.gitignore文件:

*
!*/scripts
!*/jobs

运行git push -u origin master后,出现以下错误:

Counting objects: 33165, done.
Delta compression using up to 2 threads.
Compressing objects: 100% (32577/32577), done.
Writing objects: 100% (33165/33165), 359.84 MiB | 1.70 MiB/s, done.
Total 33165 (delta 21011), reused 0 (delta 0)
remote: Resolving deltas: 100% (21011/21011), done.
remote: GitLab: 
remote: A default branch (e.g. master) does not yet exist for a/b/c
remote: Ask a project Owner or Maintainer to create a default branch:
remote: 
remote:   https://gitlab.com/a/b/c/project_members
remote: 
To gitlab.com:a/b/c.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@gitlab.com:a/b/c.git'

可能是什么问题?请告知

qmelpv7a

qmelpv7a1#

这与issue 27456merge request 6608相关联:
记录需要成为所有者或拥有初始推送的主权限级别
因此,这可能是权限级别问题,而不是分支问题。
请参阅commit 81ee443
您需要是所有者或具有主权限级别才能进行初始推送,因为主分支会自动受到保护。

332nm8kg

332nm8kg2#

我也有这个问题很长一段时间了。尝试了不同的方法,但都不起作用。我公司GitLab仓库的所有者把我的状态从“开发者”改为“维护者”,它终于对我起作用了。

k4emjkb1

k4emjkb13#

有两种方法可以解决此问题:
1.将相关开发人员的权限至少提升到“维护者”,或者
1.另一个维护者可以进入仓库的“Settings”-〉“Repository”,在“Protected Branches”下,为main创建一个条目(或者任何你想要的默认分支),并设置它,这样创建仓库的用户也可以推送到main.结果如下所示:x1c 0d1x Gitlab会将main分支显示为“已删除”,因为它还不存在,但是开发人员现在可以推送他们的代码了。

相关问题