<div dir="ltr">I have already tested protected branches on GitHub successfully and found it allowed exactly the pushes that were correct -- they must all have the current HEAD as an ancestor, and so they always move the repo forward without dropping already pushed patches.<div><br></div><div>At most, it would might make sense to have some client-side scripts we encourage users to install that check for accidental pushes of massive series of patches in a single go and warn them about it.</div></div><br><div class="gmail_quote"><div dir="ltr">On Tue, Jul 19, 2016 at 4:44 PM Renato Golin <<a href="mailto:renato.golin@linaro.org">renato.golin@linaro.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><p dir="ltr">That is what I'm proposing, and Tim is helping us test. We should reach a solution quickly, and once we do, I'll update the document. </p>
<p dir="ltr">Feel free to try his repo, I'll only try tomorrow. If you guys come up with a clear flow before that, let me know. </p>
<p dir="ltr">Cheers, <br>
Renato </p>
<div class="gmail_extra"><br><div class="gmail_quote">On 20 Jul 2016 12:36 a.m., "Chandler Carruth" <<a href="mailto:chandlerc@google.com" target="_blank">chandlerc@google.com</a>> wrote:<br type="attribution"><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr">I've not read all of the github threads, so sorry if this has been brought up, but...<br><br><div class="gmail_quote"><div dir="ltr">On Tue, Jul 19, 2016 at 1:27 PM Renato Golin via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"> 1. Pre-commit hooks, avoiding forced pushes / re-order<br>
<br>
GitHub doesn't support server hooks due to security concerns.<br></blockquote><div><br></div><div>GitHub does support protected branches which prevent forced pushes. I've even played with them in the llvm GitHub project and they work as expected. It should give the exact workflow that I think LLVM devs are used to with Subversion of post-commit review.</div><div><br></div><div>-Chandler</div></div></div>
</blockquote></div></div>
</blockquote></div>