<p dir="ltr"></p>
<p dir="ltr">Il 20/Nov/2016 15:08, "Barak Korren" <<a href="mailto:bkorren@redhat.com">bkorren@redhat.com</a>> ha scritto:<br>
><br>
> Hi there,<br>
><br>
> I would like to address a concernt that had been raised to us by<br>
> multiple developers, and reach an agreement on how (and if) to remedy<br>
> it.<br>
><br>
> Lets assume the following situation:<br>
> We have a Git repo in Gerrit with top commit C0 in master.<br>
> On time t0 developers Alice and Bob push patches P1 and P2 respectively<br>
> to master so that we end up with the following situation in git:<br>
> C0 <= P1 (this is Alice`s patch)<br>
> C0 <= P2 (this is Bob`s patch)<br>
><br>
> On time t1 CI runs for both patches checking the code as it looks for<br>
> each patch. Lets assume CI is successful for both.<br>
><br>
> On time t2 Alice submits her patch and Gerrit merges it, resulting in<br>
> the following situation in master:<br>
> C0 <= P1<br>
><br>
> On time t2 Bob submits his patch. Gerrit, seeing master has changed,<br>
> re-bases the patch and merges it, the resulting situation (If the<br>
> rebase is successful) is:<br>
> C0 <= P1 <= P2<br>
><br>
> This means that the resulting code was never tested in CI. This, in<br>
> turn, causes various failures to show up post-merge despite having<br>
> pre-merge CI run successfully.<br>
><br>
> This situation is a result of the way our repos are currently<br>
> configured. Most repos ATM are configured with the "Rebase If<br>
> Necessary" submit type. This means that Gerrit tries to automatically<br>
> rebase patches as mentioned in t2 above.<br>
><br>
> We could, instead, configure the repos to use the "Fast Forward Only"<br>
> submit type. In that case, when Bob submits on t2, Gerrit refuses to<br>
> merge and asks Bob to rebase (While offering a convenient button to do<br>
> it). When he does, a new patch set gets pushed, and subsequently<br>
> checked by CI.<br>
><br>
> I recommend we switch all projects to use the "Fast Forward Only" submit type.<br>
><br>
> Thoughts? Concerns?<br></p>
<p dir="ltr">+1 for me<br></p>
<p dir="ltr">><br>
> --<br>
> Barak Korren<br>
> <a href="mailto:bkorren@redhat.com">bkorren@redhat.com</a><br>
> RHEV-CI Team<br>
> _______________________________________________<br>
> Devel mailing list<br>
> <a href="mailto:Devel@ovirt.org">Devel@ovirt.org</a><br>
> <a href="http://lists.ovirt.org/mailman/listinfo/devel">http://lists.ovirt.org/mailman/listinfo/devel</a><br></p>