How to do a Merge Difference from "Changed Cust. Version" and "Old Base" into a "New

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • bennihoch
    New User
    • Nov 2009
    • 2

    How to do a Merge Difference from "Changed Cust. Version" and "Old Base" into a "New

    Hi everybody,

    I'm trying to figure out how to do a Merge:

    Difference from "Changed Cust. Version" and "Old Base" into a "New Base".

    "Changed Cust. Version" is based on "Old Base" and i need to merge the difference into a updated Version of the file.

    But BC is always working in the way that all files have the same "Base Version" .
  • Aaron
    Team Scooter
    • Oct 2007
    • 15996

    #2
    Hello,

    Beyond Compare 3 treats the center column as the ancestor for a 3way Merge. Is New base not also from old base?

    If it is, simply have Old Base in the center column, and Cust and New in the left and right, with a new 4th file being the output (or point at New Base, but for testing purposes I would recommend a new 4th file).

    If it is not, use the Text Compare to compare Old Base and Cust to get an up to date file. Then Compare that file with New Base to get a new file that contains all of your changes.

    Does that help with your current task?
    Aaron P Scooter Software

    Comment

    • bennihoch
      New User
      • Nov 2009
      • 2

      #3
      Hi Aaron,

      thank you for your fast response.

      The New Base is also from old Base. But I don't want to merge the changes between old and new base. At the end there should be only text from the New Base and from the Customer Version copied into a new file.

      We have to do a lot of this merges in our company and we are looking for the best merge tool to solve this problem. Is there a way to change BC that it is working in this way?

      Kind regards,
      Benjamin

      Comment

      • Michael Bulgrien
        Carpal Tunnel
        • Oct 2007
        • 1772

        #4
        Aaron is right. The whole concept of a 3-way merge is that there be a common ancestor. In your description, the Old base is the common ancestor. Put the "Changed Cust. Version" on the left, the "Old Base" in the middle, and the "New Base" on the right. The output will be the updated "New Base".

        If you don't want the changes between the old and new base, then it is not a true 3-way merge and you will need to perform a manual merge or author and execute a custom-built one-timer conversion script against the old base and/or the changed cust. version to make them compatible with the new base.
        Last edited by Michael Bulgrien; 17-Nov-2009, 02:54 PM.
        BC v4.0.7 build 19761
        ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

        Comment

        • Aaron
          Team Scooter
          • Oct 2007
          • 15996

          #5
          Thanks, Michael.

          Ben,
          By having a common ancestor in the center column, it can better detect what has changed between "Yours", "Theirs" (New Base), and "Ancestor" (Old Base). With all 3 present, it can tell if someone deleted something in New Base from Old base that you didn't delete (since if it is present in New Base, but not yours or old base, it is a new change that should be incorporated).

          Give it a try and see if the results in Output, a 4th file, look like what you expect. We show with color where each change is taken from, and the whole process can be manually reviewed. By using a 4th file as the output, you are also not replacing or deleting any data.
          Aaron P Scooter Software

          Comment

          • Aaron
            Team Scooter
            • Oct 2007
            • 15996

            #6
            In addition, you may want to look at the Favor Left or Favor Right options. If you know one of your sides has priority, you can use this to help limit the number of manual merging of text.
            Aaron P Scooter Software

            Comment

            Working...