Results 1 to 5 of 5
  1. #1
    Join Date
    Mar 2016
    Posts
    3

    Default On delete/modified merge, BC picks Base, which is the worst choice of all

    Consider the example in the attached file.

    If I had a section which was deleted in one branch, and modified in another, BC picks the BASE by default.

    This makes no sense at all. The sensible choice (by default) would be to leave local untouched, and mark this as a conflict.
    Attached Files Attached Files

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

    Default

    Hello,

    When this occurs, we do mark this text section as a Conflict and it should be resolved with user interaction before proceeding with a save.

    The center pane is the common ancestor, but otherwise the Left and Right are equally weighted. Different version control systems pass in this information using remote paths, local temp files, etc. We pick the ancestor as the best (not ideal) fall back choice for a scenario.
    Aaron P Scooter Software

  3. #3
    Join Date
    Mar 2016
    Posts
    3

    Default

    What makes the ancestor the best choice? I find it the worst one. When merging, you typically prefer either the local version, the remote version or some mix of both. I do merges on a daily basis, and I don't remember ever choosing the base as the result. What makes deleted/modified conflict different?

  4. #4
    Join Date
    Oct 2007
    Location
    Madison, WI
    Posts
    11,619

    Default

    BC4's Left and Right side are equally weighted, and depending on the parameter order it would take either Yours or Theirs variably depending on each customer's configuration or the version control software's preference. If we could detect the "correct" item or side to take, we would.

    As a detected Conflict, merging requires user interaction to resolve. The BC4 output pane is populated with the ancestor text for context, rather than leaving it blank.
    Aaron P Scooter Software

  5. #5
    Join Date
    Mar 2016
    Posts
    3

    Default

    Quote Originally Posted by Aaron View Post
    BC4's Left and Right side are equally weighted, and depending on the parameter order it would take either Yours or Theirs variably depending on each customer's configuration or the version control software's preference. If we could detect the "correct" item or side to take, we would.
    Either one would be good as a reference, certainly better than the base.

    Quote Originally Posted by Aaron View Post
    As a detected Conflict, merging requires user interaction to resolve. The BC4 output pane is populated with the ancestor text for context, rather than leaving it blank.
    Actually leaving it blank makes much more sense than using the base.

    I'd vote generally for the deleted in case of deleted/modified conflict, doesn't matter if it's the local or the remote (of course still marking it as a conflict for the user's attention).

Posting Permissions

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