bug-diffutils
[Top][All Lists]
Advanced

[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...



reply via email to

[Prev in Thread] Current Thread [Next in Thread]