[prev in list] [next in list] [prev in thread] [next in thread]
List: git
Subject: Re: [PATCH 0/3] Teach Git about the patience diff algorithm
From: Pierre Habouzit <madcoder () debian ! org>
Date: 2009-01-07 22:45:04
Message-ID: 20090107224504.GA29537 () artemis ! corp
[Download RAW message or body]
On Wed, Jan 07, 2009 at 10:00:07PM +0000, Johannes Schindelin wrote:
> Therefore I counted the lines between conflict markers (actually, a perl
> script did). Of these 66 merges, on average patience merge produced
> 4.46774193548387 _fewer_ lines between conflict markers.
>
> Take that with a grain of salt, though: the standard deviation of this
> difference is a hefty 121.163046639509 lines.
>
> The worst case for patience diff was the merge
> 4698ef555a1706fe322a68a02a21fb1087940ac3, where the --cc diff line counts
> are 1300 (without) vs 1301 (with patience merge), but the lines between
> conflict markers are 197 vs a ridiculous 826 lines!
>
> But you should take that also with a grain of salt: this merge is a
> _subtree_ merge, and my test redid it as a _non-subtree_ merge.
>
> So I restricted the analysis to the non-subtree merges, and now
> non-patience merge comes out 6.97297297297297 conflict lines fewer than
> patience merge, with a standard deviation of 58.941106657867 (with a total
> count of 37 merges).
>
> Note that ~7 lines difference with a standard deviation of ~59 lines is
> pretty close to ~0 lines difference.
>
> In the end, the additional expense of patience merge might just not be
> worth it.
Depends, if it can help generating nicer merges, it's good to have.
We could have an option to git-merge that tries hard to generate the
smallest conflict possible. _that_ would really really be worth it. I
mean, I've had really really tricky conflicts to work with where
git-merge genrated ridiculously big conflicts, and where I hard to
resort using UI tools to perform the merge (meld IIRC to name it), and
given how slow and crappy those tools are, I would gladly restart a
merge with a --generate-smallest-conflicts-as-possible if it can save me
from those merge tools.
YMMV though.
PS: I never thought the patience diff is a silver bullet, it's just yet
another tool in the toolbox.
--
·O · Pierre Habouzit
· ·O madcoder@debian.org
OOO http://www.madism.org
[Attachment #3 (application/pgp-signature)]
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic