summaryrefslogtreecommitdiffstats
path: root/git-rebase.txt
diff options
context:
space:
mode:
authorJunio C Hamano <junio@kernel.org>2010-06-21 15:23:55 +0000
committerJunio C Hamano <junio@kernel.org>2010-06-21 15:23:55 +0000
commitbb88cf46ef8a2521a253db9ab576e12202a54fa5 (patch)
treebbc5092df07bff8072a1d42a422ab68b4dbd7aac /git-rebase.txt
parentf5de4cf4e1e8bccd17515d71186e752f4716cac9 (diff)
downloadgit-htmldocs-bb88cf46ef8a2521a253db9ab576e12202a54fa5.tar.gz
Autogenerated HTML docs for v1.7.1-524-g6df2
Diffstat (limited to 'git-rebase.txt')
-rw-r--r--git-rebase.txt27
1 files changed, 27 insertions, 0 deletions
diff --git a/git-rebase.txt b/git-rebase.txt
index 50ba2e469..be23ad235 100644
--- a/git-rebase.txt
+++ b/git-rebase.txt
@@ -310,6 +310,11 @@ link:howto/revert-a-faulty-merge.txt[revert-a-faulty-merge How-To] for details).
-p::
--preserve-merges::
Instead of ignoring merges, try to recreate them.
++
+This uses the `--interactive` machinery internally, but combining it
+with the `--interactive` option explicitly is generally not a good
+idea unless you know what you are doing (see BUGS below).
+
--root::
Rebase all commits reachable from <branch>, instead of
@@ -611,6 +616,28 @@ The ripple effect of a "hard case" recovery is especially bad:
case" recovery too!
+BUGS
+----
+The todo list presented by `--preserve-merges --interactive` does not
+represent the topology of the revision graph. Editing commits and
+rewording their commit messages should work fine, but attempts to
+reorder commits tend to produce counterintuitive results.
+
+For example, an attempt to rearrange
+------------
+1 --- 2 --- 3 --- 4 --- 5
+------------
+to
+------------
+1 --- 2 --- 4 --- 3 --- 5
+------------
+by moving the "pick 4" line will result in the following history:
+------------
+ 3
+ /
+1 --- 2 --- 4 --- 5
+------------
+
Authors
------
Written by Junio C Hamano <gitster@pobox.com> and