[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [bug-diffutils] Getting all versions, but skipping overlaps
From: |
Bob Bell |
Subject: |
Re: [bug-diffutils] Getting all versions, but skipping overlaps |
Date: |
Thu, 4 Oct 2012 01:27:41 -0400 |
User-agent: |
Mutt/1.5.21 (2010-09-15) |
No replies? No "you're crazy", or "I'd like that, too" or "I can add
that for you" or "you can write the code yourself, here's a tip"?
On Thu, Sep 27, 2012 at 02:58:44PM -0400, Bob Bell wrote:
> Recently, I've started using the "-A" option to merge / diff3, so that
> when there's a merge conflict, I get the "ancestor" version as well as
> both changes. Not to overstate things, but I've found that this has
> completely transformed my experience resolving source code merge
> conflicts, as the information I have at hand is SO much more helpful.
> With regards to the diff3.c source code, I believe that the option that
> I really appreciate is "diff_2nd".
>
> However, one thing I'd often still like to do is to ignore cases where
> there are identical changes made. That is, for a block of code, there's
> a difference between FILEC and FILE0, as well as between FILEC and
> FILE1, but the blocks in FILE0 and FILE1 are identical.
>
> When I use diff3 with "-A", this appears as a bracketed conflict, with
> the labelled blocks from FILEC and FILE1. I don't get the "|||||||"
> marker or the identical block from FILE0, so it's fairly easy to
> identify this case. But when resolving a merge, it still needs to be
> "cleaned up".
>
> It appears that diff3 supports a "-x" or "-X" option to select
> "overlap_only", which would ignore these non-overlapping changes.
> However, the code enforces that I cannot select "-A" with either "-x" or
> "-X", and "-A" appears the only way to select "diff_2nd", so that it
> outputs the version of the block from FILE2/FILEC. For example, I can
> pass "-m" and "-X", but then I will not get the block of code from
> FILEC, losing the information that I value so dearly.
>
> In summary, I believe what I'd really like is to display the merges
> file, bracketing the conflicting changes, NOT including when FILE0 and
> FILE1 made identical changes, but when there *IS* a conflicting change,
> I'd like to see FILE0, FILE1 *and* FILE2/FILEC.
>
> Is this possible?
>
> Thanks,
> Bob
>
> P.S. I apologize for all the terminology I may have used incorrectly...
- Re: [bug-diffutils] Getting all versions, but skipping overlaps,
Bob Bell <=