Results 1 to 6 of 6
  1. #1
    Join Date
    Nov 2009
    Posts
    2

    Question 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" .

  2. #2
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    11,893

    Default

    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

  3. #3
    Join Date
    Nov 2009
    Posts
    2

    Default

    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

  4. #4
    Join Date
    Oct 2007
    Location
    Pennsylvania
    Posts
    1,772

    Default

    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 at 01:54 PM.
    BC v4.0.7 build 19761
    ¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯

  5. #5
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    11,893

    Default

    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

  6. #6
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    11,893

    Default

    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

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •