No announcement yet.

Problem w/3 Way Merge using BCOMP.EXE

  • Filter
  • Time
  • Show
Clear All
new posts

  • Problem w/3 Way Merge using BCOMP.EXE

    Hi there,

    I recently added Beyond Compare as the Diff/Merge utility to use when doing 2/3 way merges from our Source Control Surround SCM.

    The command line I have are as follows:

    2 way: <path>\bcomp.exe "%1" "%2"
    3 way: <path>\bcomp.exe "%1" "%2" "%3"

    When a merge/diff is required BC fires up okay, without any problems. The files appear to be in the correct panes, and the merge looks good. Surround "waits" for Bcomp.exe to return (die) before detecting that the merged file is saved to disk so it can proceed checking the file in etc.

    As soon as I drop OR enter any text into the "Enter a filename" combo box at the bottom of the window for the merged file, the BCOMP.EXE process dies off causing Surround to take over and realize that the merge file has not been changed, so no checkin etc.

    I wrote a batch file to test my theory.. It simply calls BCOMP with 3 files as parameters, and calls "pause" when bcomp.exe is finished... And sure enough, pause appears as soon as I touch the filename combo.

    Am I firing up BC correctly? Missing a parameter? Any help you can provide would be great...


  • #2
    bcomp.exe is the correct executable to call from a version control system. I'll get the current version of Surround SCM setup on a test system and post an update once I've had a chance to do some testing.
    Chris K Scooter Software


    • #3
      Thanks for the reply.

      I tried the above test using the bcompare.exe, and it works as I would expect it to. I understand the idea behind bcompare and bcomp ..

      Without using Surround, does the description above with the bcomp process dieing after a modification in the combo box sound as designed? I thought the bcomp process is only suppose to die when the file is modified or the application is closed.

      Thanks for looking into this.


      • #4
        Usually the merge output filename should be passed in by the version control system.

        bcomp.exe left.c right.c center.c output.c

        I'm not familiar with Surround SCM, so I'll have to do some testing to figure out what the correct arguments are.
        Chris K Scooter Software


        • #5
          Have there been any updates for this issue?

          I've got it working somewhat - I changed the parameters from Surround to:

          bcomp.exe %1 %2 %3 /mergedoutput=%2 and that gives me better results as I do not need to drop the combo box to select a merged output filename.

          Does Beyond Compare, by design, kill the "bcomp" process when the combo box selection changes? Why does it do this?



          • #6
            Chris might not have known this. Yes, BComp.exe will exit it you change any of the input paths. It's a full BC instance, so there's nothing stopping you from loading completely different files or launching folder compares, so tying it to the original paths was the only reasonable way for us to limit it.

            If that's a problem you can use BCompare.exe with the /solo switch instead. It'll open each comparison in a top-level window, and startup for multiple comparisons might be a little slower, but otherwise you shouldn't notice any difference.
            Zoë P Scooter Software