summaryrefslogtreecommitdiffstats
path: root/git-rebase.html
diff options
context:
space:
mode:
authorJunio C Hamano <gitster@pobox.com>2023-04-04 16:19:06 -0700
committerJunio C Hamano <gitster@pobox.com>2023-04-04 16:19:06 -0700
commit3acb2e7b34954a141e76b0004a474d276bc86657 (patch)
tree9f58d4850d4d4ff91d24034c346a297fb8bc0f64 /git-rebase.html
parent2c6fc7e6eff6094e52759550c7b28d37f3fb1ffc (diff)
downloadgit-htmldocs-3acb2e7b34954a141e76b0004a474d276bc86657.tar.gz
Autogenerated HTML docs for v2.40.0-214-gae73b
Diffstat (limited to 'git-rebase.html')
-rw-r--r--git-rebase.html40
1 files changed, 31 insertions, 9 deletions
diff --git a/git-rebase.html b/git-rebase.html
index 764a3458f..345b408a8 100644
--- a/git-rebase.html
+++ b/git-rebase.html
@@ -1467,6 +1467,9 @@ have the long commit hash prepended to the format.</p></div>
<dt class="hdlist1">
--rebase-merges[=(rebase-cousins|no-rebase-cousins)]
</dt>
+<dt class="hdlist1">
+--no-rebase-merges
+</dt>
<dd>
<p>
By default, a rebase will simply drop merge commits from the todo
@@ -1475,14 +1478,18 @@ have the long commit hash prepended to the format.</p></div>
the branching structure within the commits that are to be rebased,
by recreating the merge commits. Any resolved merge conflicts or
manual amendments in these merge commits will have to be
- resolved/re-applied manually.
-</p>
-<div class="paragraph"><p>By default, or when <code>no-rebase-cousins</code> was specified, commits which do not
-have <code>&lt;upstream&gt;</code> as direct ancestor will keep their original branch point,
-i.e. commits that would be excluded by <a href="git-log.html">git-log(1)</a>'s
-<code>--ancestry-path</code> option will keep their original ancestry by default. If
-the <code>rebase-cousins</code> mode is turned on, such commits are instead rebased
-onto <code>&lt;upstream&gt;</code> (or <code>&lt;onto&gt;</code>, if specified).</p></div>
+ resolved/re-applied manually. <code>--no-rebase-merges</code> can be used to
+ countermand both the <code>rebase.rebaseMerges</code> config option and a previous
+ <code>--rebase-merges</code>.
+</p>
+<div class="paragraph"><p>When rebasing merges, there are two modes: <code>rebase-cousins</code> and
+<code>no-rebase-cousins</code>. If the mode is not specified, it defaults to
+<code>no-rebase-cousins</code>. In <code>no-rebase-cousins</code> mode, commits which do not have
+<code>&lt;upstream&gt;</code> as direct ancestor will keep their original branch point, i.e.
+commits that would be excluded by <a href="git-log.html">git-log(1)</a>'s <code>--ancestry-path</code>
+option will keep their original ancestry by default. In <code>rebase-cousins</code> mode,
+such commits are instead rebased onto <code>&lt;upstream&gt;</code> (or <code>&lt;onto&gt;</code>, if
+specified).</p></div>
<div class="paragraph"><p>It is currently only possible to recreate the merge commits using the
<code>ort</code> merge strategy; different merge strategies can be used only via
explicit <code>exec git merge -s &lt;strategy&gt; [...]</code> commands.</p></div>
@@ -2746,6 +2753,21 @@ rebase.forkPoint
</p>
</dd>
<dt class="hdlist1">
+rebase.rebaseMerges
+</dt>
+<dd>
+<p>
+ Whether and how to set the <code>--rebase-merges</code> option by default. Can
+ be <code>rebase-cousins</code>, <code>no-rebase-cousins</code>, or a boolean. Setting to
+ true or to <code>no-rebase-cousins</code> is equivalent to
+ <code>--rebase-merges=no-rebase-cousins</code>, setting to <code>rebase-cousins</code> is
+ equivalent to <code>--rebase-merges=rebase-cousins</code>, and setting to false is
+ equivalent to <code>--no-rebase-merges</code>. Passing <code>--rebase-merges</code> on the
+ command line, with or without an argument, overrides any
+ <code>rebase.rebaseMerges</code> configuration.
+</p>
+</dd>
+<dt class="hdlist1">
sequence.editor
</dt>
<dd>
@@ -2770,7 +2792,7 @@ sequence.editor
<div id="footer">
<div id="footer-text">
Last updated
- 2023-02-03 21:26:01 PST
+ 2023-04-04 16:17:01 PDT
</div>
</div>
</body>