当我尝试推动我已经提交的更改时,我得到以下错误…

git.exe push -v --progress  "origin" iteration1:iteration1

remote: *********************************************************************
To ssh://git@mycogit/cit_pplus.git
! [remote rejected] iteration1 -> iteration1 (pre-receive hook declined)
error: failed to push some refs to 'ssh://git@mycogit/cit_pplus.git'

这是怎么呢


当前回答

在我的例子中,在Gitlab的一个项目中有一个Committer限制:

用户只能将通过自己的验证电子邮件提交的提交推到此存储库。

因为我还在我的机器上配置了SSH,所以我的global_user_email在git配置文件中更新了我的机器地址,因此远程不允许推送。

你可以在以下网址找到:

Gitlab ->设置->存储库->推送规则

只要禁用提交限制,它就会工作。

其他回答

我遇到了同样的错误,在检查我有一个开发人员访问,不能发布一个新的分支。增加更高的访问权限解决了这个问题。

对我来说,一切都很顺利,直到Bitbucket今天(2020年4月21日)自动更改了他们的政策。这恰好与今天推出的新功能“工作区”(Workspaces)相一致,所以我怀疑它与此有关。

解决方法:我(作为管理员)按照说明在用户界面中添加电子邮件地址到用户(您正在使用的电子邮件可以在git config——list中找到)

您的提交与存储库维护者的规则不兼容,您只需要git reset—hard HEAD ~ 1来删除最后一次提交。在此之后,根据维护者的规则就可以了

我在我的应用程序中有两个不同的锁文件,删除未使用的解决方案。

我使用GitKraken,我们做了一个本地分支,然后我们合并了两个远程分支,然后我们尝试将本地分支推到原点。它不能使用相同的错误消息。

解决方案是创建本地分支,并首先将其推到原点,然后进行合并。