Note that there are some explanatory texts on larger screens.

plurals
  1. PO
    text
    copied!<p>Or (for the <a href="https://github.com/git/git/blob/a194eaddca201163aa756faccd519f056bd3c35e/Documentation/RelNotes/1.8.5.txt#L66-L68">upcoming git 1.8.5 Q4 2013</a>, now delivered in git 1.8.5, 2013-11-27):</p> <blockquote> <p>"<code>git pull --rebase</code>" always chose to do the bog-standard flattening rebase.<br> You can tell it to run "<code>rebase --preserve-merges</code>" by setting "<code>pull.rebase</code>" configuration to "<code>preserve</code>".</p> </blockquote> <p>So a simple config will be enough to make sure your <code>pull --rebase</code> does preserve merge:</p> <pre><code>git config pull.rebase preserve </code></pre> <hr> <p>See <a href="https://github.com/git/git/commit/66713ef3b00933755cdeff1ae823dda7b5843640">commit 66713ef3</a> for more (thanks to <a href="https://github.com/stephenh">Stephen Haberman</a>):</p> <h2>pull: allow pull to preserve merges when rebasing</h2> <blockquote> <p>If a user is working on master, and has merged in their feature branch, but now has to "<code>git pull</code>" because master moved, with <code>pull.rebase</code> their feature branch will be flattened into master.</p> <p>This is because "<code>git pull</code>" currently does not know about rebase's preserve merges flag, which would avoid this behavior, as it would instead replay just the merge commit of the feature branch onto the new master, and not replay each individual commit in the feature branch.</p> <p>Add a <code>--rebase=preserve</code> option, which will pass along <code>--preserve-merges</code> to rebase.</p> <p>Also add '<code>preserve</code>' to the allowed values for the <code>pull.rebase</code> config setting.</p> </blockquote>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload