No announcement yet.

Completely independent 3-way mwerg

  • Time
  • Show
Clear All
new posts

  • Completely independent 3-way mwerg

    I have BC3 Pro. I have the following source code files in three completely separate directories:

    - A base directory (BASE) with the original of all the code.
    - A directory (DELTA) with new changes that were made for a particular function.
    - Another directory (LATEST) that contains the latest versions of the code, but does not contain any of the changes in DELTA.

    What I want to do is merge all the changes in DELTA into LATEST. I understand that BC3 does not support direct three-way merging of directories, but is there a way that I could manually merge individual files? What I would like to do is to start with a BC3 diff between BASE and DELTA, then for each change I find there, open up the corresponding file in LATEST and do a three way merge into the LATEST version. Is there some way that I can do this? Can I create a BC3 macro of some kind that I could launch from the diff panel? I can see how to run the 3 way merge from the command line, but I would prefer to be able to do this from BC3 itself.

  • #2
    You can trigger a 3 way merge by selecting 3 files in the Folder Compare, but you are only able to load 2 folders at this time.

    Would the Windows Shell Extension work for you? You can have 3 Windows Explorer windows open, and select each file in each window with the right click and select to Merge. You would need to enable Merge in the Tools menu -> Options, Startup section, in the Context menu options. Alternatively, you can drag and drop from explorer onto any of the three file paths or open panes in a blank Text Merge session.
    Aaron P Scooter Software


    • #3
      We have a similar problem set in a need to retrofit:

      Rev 1.1, 1.2...............2.5, 2.6

      We need to take the features which were added in 2.5->2.6, and punch that additional code into version 1.2.

      So, we need to examine the diff from 2.5->2.6, or maybe 2.4->2.6, and identify blocks.

      Fortunately, and sadly, in our industry all changes can pretty much be concluded to be ADDING code.

      So, that DELTA needs to go into version 1.2, creating a new

      I suppose that we could just fire up our existing license of BC2, and compare 2.5 to 2.6, and cut out those changes, and bring up a separate editor window for 1.2, and manually line up the changes. However, having the alignment capability of BC3 would seem to be a benefit worth the upgrade.

      However, the 3-way assumption doesn't fit the retrofit scenario, as we do NOT want to go back to the original parent, which might be 90 revisions back.