Uploaded image for project: 'Subversion'
  1. Subversion
  2. SVN-4847

Automatic merge gets confused if merges are performed in parallel

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Major
    • Resolution: Unresolved
    • all
    • None
    • libsvn_client
    • None

    Description

      The automatic merge heuristic will pick the wrong merge strategy if merges and commits are interleaved like this:

      1. Create trunk and branch1
      2. Commit an edit to file mu in trunk
      3. Commit an edit to file iota in branch1
      4. Merge trunk -> branch1
      5. Merge branch1 -> trunk
      6. Commit trunk
      7. Commit branch1
      8. Commit further edits to mu in trunk
      9. Attempt to merge trunk into branch

      At step 9 Subversion performs a reintegrate merge which results in a spurious merge conflict. If a sync merge is forced instead the merge completes without conflicts. If there was a way to extend the heuristic to detect this case the
      merge conflict could be avoided.

      This problem was reported by Daniel Dickison and discussed in detail in the users@ list thread: "False conflict with interleaved merge commits":

      https://svn.haxx.se/users/archive-2020-02/0002.shtml
      https://svn.haxx.se/users/archive-2020-02/0004.shtml
      https://svn.haxx.se/users/archive-2020-02/0006.shtml
      https://svn.haxx.se/users/archive-2020-02/0007.shtml

      Attachments

        1. merge-interleave-3.sh.txt
          5 kB
          Stefan Sperling

        Activity

          People

            Unassigned Unassigned
            stsp Stefan Sperling
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: