<div dir="ltr"><br><div style>   Geoffrey,</div><div style><br></div><div style>   No idea, but I think the main issue with the PR merge button is that by clicking on it, we are &quot;blindly&quot; accepting the code changes without testing on our machine first. So for a couple lines of code changes, like a fix on typos or docs, it is fine, but for anything larger we should be pulling the PR into our local code base, rebasing it, running the tests and only after that pushing to the public repo....</div>
<div style><br></div><div style>   At least, this is how I see it... </div><div style><br></div><div style>   Edson</div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Apr 25, 2013 at 10:36 AM, Geoffrey De Smet <span dir="ltr">&lt;<a href="mailto:ge0ffrey.spam@gmail.com" target="_blank">ge0ffrey.spam@gmail.com</a>&gt;</span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF" text="#000000">
    Is there any way to default the &quot;merge button on pull requests&quot; to
    default to the rebase strategy?<div><div class="h5"><br>
    <br>
    <div>On 25-04-13 15:59, Edson Tirelli wrote:<br>
    </div>
    </div></div><blockquote type="cite"><div><div class="h5">
      <div dir="ltr">
        <div><br>
        </div>
        <div>   All,</div>
        <div><br>
        </div>
        <div>   We noticed lately that an increasing number of
          git merges is happening in the Drools/jBPM codebase. Git
          merges can be easily identified in the &quot;network&quot; graph in
          github repo, or by using any other Git client tool, as
          parallel lines in the branch history. E.g.:</div>
        <div><br>
        </div>
        <div><a href="https://github.com/droolsjbpm/droolsjbpm-knowledge/network" target="_blank">https://github.com/droolsjbpm/droolsjbpm-knowledge/network</a><br>
        </div>
        <div><br>
        </div>
        <div>   Please note that each and every merge, while
          not a big problem by itself, increases the risk of overriding
          code changes (i.e., losing code) as well as increases future
          maintenance cost. If you want know more about it, feel free to
          ask, or just trust me on this... :)<br>
        </div>
        <div><br>
        </div>
        <div>   Git offers an alternative to merges in the form
          of &quot;rebase&quot;. Rebase enables developers to commit code on top
          of the most recent change in the branch, instead of in
          parallel to it. It guarantees no code will be lost when doing
          that, and makes it easier to maintain code in the future. If
          you don&#39;t know how to rebase code, please read one of the many
          git books/documentation available on line, like:</div>
        <div><br>
        </div>
        <div><a href="http://git-scm.com/book" target="_blank">http://git-scm.com/book</a><br>
        </div>
        <div><br>
        </div>
        <div>   Also feel free to ask and I will be happy to
          help.</div>
        <div><br>
        </div>
        <div>
             There is just one case where rebase can not be used:</div>
        <div><br>
        </div>
        <div>* You should NEVER rebase a commit that was
          published to a public repository before.</div>
        <div><br>
        </div>
        <div>   Also, the github pull request &quot;merge&quot; button
          uses merge instead of rebase. While it is very quick and easy
          for a developer to click on that button, please note that it
          introduces merges, and at the same time commits code that was
          not tested by the person doing the merge. It is acceptable for
          small code fixes, but for anything larger than a few lines of
          code changes, you should pull the changes into your machine
          rebasing them, run the tests to make sure they are still clean
          and only after that push the PR changes to the public repo.</div>
        <div><br>
        </div>
        <div>   Please be aware of that and try to minimize
          merges by using rebase whenever possible.</div>
        <div><br>
        </div>
        <div>   Thanks,</div>
        <div><br>
        </div>
        -- <br>
          Edson Tirelli<br>
          JBoss Drools Core Development<br>
          JBoss by Red Hat @ <a href="http://www.jboss.com" target="_blank">www.jboss.com</a>
      </div>
      <br>
      <fieldset></fieldset>
      <br>
      </div></div><pre>_______________________________________________
rules-dev mailing list
<a href="mailto:rules-dev@lists.jboss.org" target="_blank">rules-dev@lists.jboss.org</a>
<a href="https://lists.jboss.org/mailman/listinfo/rules-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-dev</a></pre>
    </blockquote>
    <br>
  </div>

<br>_______________________________________________<br>
rules-dev mailing list<br>
<a href="mailto:rules-dev@lists.jboss.org">rules-dev@lists.jboss.org</a><br>
<a href="https://lists.jboss.org/mailman/listinfo/rules-dev" target="_blank">https://lists.jboss.org/mailman/listinfo/rules-dev</a><br></blockquote></div><br><br clear="all"><div><br></div>-- <br>  Edson Tirelli<br>  JBoss Drools Core Development<br>
  JBoss by Red Hat @ <a href="http://www.jboss.com">www.jboss.com</a>
</div>