Hello,
I have
changed how Gerrit integrates changes which will eliminate the
extra merge commits created by CI and ensure linear git history.
By default,
when Gerrit submits a change it first attempt to fast forward
the target branch. If it is not possible, it creates a merge
commit and fast-forwards the branch to it. I have changed our
configuration so that Gerrit will now rebase changes instead of
generating those merge commits.
Thus when
previously you would have an history with a merge commit:
* (master)
Merge "Some nice feature" <jenkins-bot>
|\
| * Some
nice feature <Jane Doe>
|/
* The base
branch <Ann Onymous>
With this
change Gerrit I have made, Gerrit would now rebase the change.
The history would now looks like:
* (master)
Some nice feature <Jane Doe>
* The base
branch <Ann Onymous>
This
ensures our branches have a linear history, that would make it
easier to follow.
Please
let me know if you have any questions or encounter issues.
References:
Antoine "hashar" Musso
Wikimedia Release Engineering team