Gerrit:远程被拒绝(你不允许上传合并),即使我允许“推送合并提交”

时间:2014-01-18 03:56:25

标签: gerrit

我已将Gerrit配置为在我的分支上允许Push Merge Commit,但在尝试推送合并提交时仍然出现以下错误:

! [remote rejected] ANDROID-foo -> ANDROID-foo (you are not allowed to upload merges)

我正在运行Gerrit 2.8-1-gaa9367b。

4 个答案:

答案 0 :(得分:15)

这是bug in gerritworkaround是创建另一个名为refs/for/refs/heads/<BRANCH_NAME>的引用,并在其上允许Push Merge Commit

更具体地说,在project.config文件中添加以下行

[access "refs/for/refs/*"]
  pushMerge = group <your-id-here>

答案 1 :(得分:5)

更适合我的解决方法,因为它不涉及了解分支是允许推送合并提交到refs/for/refs/heads/*。您可能不想特别为每个分支更改这些内容。

答案 2 :(得分:1)

通过这种方式(在link之后)对我有用:

  1. git stash
  2. git pull --rebase
  3. git push
  4. git pull
  5. git stash pop

答案 3 :(得分:-1)

首先,我使用软模式将指针重置为远程提交,然后运行

git add . 
git commit --amend
git push

对我有用。 :)