#210 Diff3, one output


To integrate WinMerge in TortoiseSVN it would be nice
to diff three files and merge them to one outputfile.
TortoiseSNV can provide the for names as parameter.

The view can look like this:

<mine> | <base> | <theirs>




  • ganier

    ganier - 2003-11-11

    Logged In: YES

    Duplicate of [ 523418 ] Three-pane view.

  • Kimmo Varis

    Kimmo Varis - 2003-11-21
    • labels: --> DIFF Engine
  • Kimmo Varis

    Kimmo Varis - 2003-11-21

    Logged In: YES

    I closed #523418 as dublicate. #523418 is anonymous.

    Copy-paste from description of #523418: "It would be nice
    if WinMerge can perform a three-file compare.
    Original and two differences. This way, when the two
    branches have to be merged in the future, the user can
    compare both to the original and merge them to each

  • Kimmo Varis

    Kimmo Varis - 2003-12-09

    Logged In: YES

    Setting as "Later" and decreasing priority. We need first
    diffutils upgrade before even thinking about this. And then
    we need to change a lot of view and merge code.

    Too risky, not for 2.2.

  • Kimmo Varis

    Kimmo Varis - 2003-12-09
    • priority: 5 --> 3
    • status: open --> open-later
  • Nobody/Anonymous

    Logged In: NO

    Actually.... the only tool I've seen try for this used a four
    pane interface (3 for inputs, 1 for output).

    Tulath (Tulath@falserealities.game-host.org)
    Vice President
    False Realities MUD

  • Mab

    Mab - 2005-02-27

    Logged In: YES

    VSS does something very similar to this with 3 panes. If
    you end up with a merge conflict it works as follows (in SVN
    terminology we'll say that you changed your working copy
    which contains revision 2, and someone has committed
    revision 3. This conflict happens when you next try to
    update to revision 3):

    The left pane contains your changed file. The right pane
    contains revision 3. The bottom pane is the output file.
    It starts filled with revision 2. Any changes due to your
    file or the revision 3 that don't conflict are filled in.
    Any changes that do cause a conflict are left with an empty

    You can click either the left or right panes and click
    'Apply only this change', or 'Apply both Changes' where
    Apply both Changes applies the pane you right-clicked and
    then the opposite pane. Choosing one of the options will
    fill in the empty block in the bottom pane. You can also
    type into the bottom pane blocks to fix any problems that
    get caused.

    It works very well, and it's the only thing I miss from VSS
    after we've switched to SVN. Finally WinMerge could be used
    to Merge files ;P

  • Jean-Francois LARVOIRE

    Logged In: YES

    Actually I wish I had four panes for that purpose:
    Often I need to merge changes done in one CVS branch into
    another branch.
    I'd like to be able to compare carefully both sets of changes,
    (From branch 1 rev 1 to rev 2, and from branch 2 rev 1 to rev 2)
    and make sure they're the same, before saving the modified
    file in the second branch.
    Here's how I'd like to work:

    | || | Branch 1 original | Branch 1 modified |
    | || | | |
    | || | Branch 2 original | Output pane |
    | || | | |

    The top two panes would show the differences I want to port.
    (Same view as WinDiff now, with the graphic bars on the left,
    but no changes allowed.)
    The bottom two would show the differences merged into the
    second branch. Again, the same view as WinDiff now, but
    changes allowed only on the right pane.
    Moving from change to change is synchronized in all four
    panes. (That's the difficult part I guess?)
    WinMerge would initially merge non conflicting changes
    automatically into the bottom-right pane, and allow manual
    changes of the rest. (Including cut and paste from any of the
    other 3 panes)


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks