Thread (1 message) 1 message, 1 author, 2016-06-15

Re: Octopus? Really? Interesting...

From: Junio C Hamano <hidden>
Date: 2016-06-15 22:44:02

Jon Loeliger [off-list ref] writes:
Couple questions:

    Is it ever NOT the case, that if you are on one
    branch ("master") and name it as a "to be merged"
    branch along with some others, that we can simplify
    the request by noting that it is the same as the
    current "to be merged into" target branch?
Yes we can, but "filter ancestors out from the remotes"
computation does not happen before the merge strategy is chosen.
    Other than creating a log message with "merged
    by octopus", will this merge be content-identical
    to the obvious simplified merge?
I think octopus actually tries to be careful not to run the
read-tree 3-way merge when merging a true ancestor (see ll.77-87
in git-merge-octopus.sh, but see below), so the resulting tree
should be identical to "-s resolve" merge.

But that does not mean the user's wish to record such a commit
as one ancestor should not be honored, and I think there
actually is a benign bug there.  Due to the "Already up-to-date
with $SHA1" part, the codepath that says "Fast forwarding to:"
never actually triggers, so in practice we end up dropping any
true ancestor from the parent list of the resulting merge.  That
contradicts the comment in ll.77-87 that suggests we try not to
outsmart the user who told us to create such an octopus for
unfathomable reason ;-)
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help