Gerrit: remote rejected (you are not allowed to upload merges) even though I allowed "Push merge commit"

Heath Borders picture Heath Borders · Jan 18, 2014 · Viewed 20.7k times · Source

I've configured Gerrit to allow Push Merge Commit on my branch, but I still get the following error when I try to push a merge commit:

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

I'm running Gerrit 2.8-1-gaa9367b.

Answer

Heath Borders picture Heath Borders · Jan 18, 2014

This is a bug in gerrit. The workaround is to create another reference named refs/for/refs/heads/<BRANCH_NAME>, and allow Push Merge Commit on it.

To be more specifically, add following lines in your project.config file

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