Thread (11 messages) flat view 11 messages, 2 authors, 2016-06-15

Re: [PATCH 4/4] git-rebase -i: New option to support rebase with merges

From: Johannes Schindelin <hidden>
Date: 2016-06-15 22:44:25

Hi,

On Mon, 24 Mar 2008, Jörg Sommer wrote:
Johannes Schindelin schrieb am Sun 23. Mar, 23:41 (+0100):
quoted
On Sun, 23 Mar 2008, Jörg Sommer wrote:
quoted
@@ -150,7 +152,18 @@ pick_one () {
 		sha1=$(git rev-parse --short $sha1)
 		output warn Fast forward to $sha1
 	else
-		output git cherry-pick "$@"
+		if test t = "$LINEAR_HISTORY" &&
+			other_parents="$(parents_of_commit $sha1 | cut -s -d' ' -f2-)" &&
+			test -n "$other_parents"
+		then
+			if test a"$1" = a-n
+			then
+				merge_opt=--no-commit
+			fi
+			redo_merge $sha1 $no_commit $other_parents
+		else
+			output git cherry-pick "$@"
+		fi
Now, that is funny.  In case of --preserve-merges, I would have 
expected you to touch pick_one_preserving_merges(), not pick_one().

I would find it highly illogical to try to redo merges _without_ -p.
Me too, but I think it's not possible to do what I want with -p.
But that is not a reason to mess up the source code.  If you do a thing as 
--linear-history (or --first-parents, as I would prefer it), that should 
be in the code path of --preserve-merges (and actually _imply_ that 
option).

--linear-history makes no sense at all without --preserve-merges.

Ciao,
Dscho
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help