tests/fish-merge
changeset 3526 91d0fee3e684
parent 3517 a6dd7ab568cc
parent 3525 c136c28a425a
child 3527 ee6b8de6df3c
equal deleted inserted replaced
3517:a6dd7ab568cc 3526:91d0fee3e684
     1 #!/bin/sh
       
     2 
       
     3 set -e
       
     4 set -x
       
     5 
       
     6 # skip commit logs
       
     7 HGMERGE=tkmerge; export HGMERGE
       
     8 EDITOR=true; export EDITOR
       
     9 
       
    10 rm -rf m m1 m2
       
    11 mkdir m
       
    12 cd m
       
    13 
       
    14 echo "m     this  that"
       
    15 echo "this" > a
       
    16 echo "that" > b
       
    17 hg init
       
    18 hg addremove
       
    19 hg commit
       
    20 echo "a:" `hg dump a` "b:" `hg dump b`
       
    21 echo
       
    22 
       
    23 cd ..
       
    24 echo "m2    this  that "
       
    25 mkdir m2
       
    26 cd m2
       
    27 hg branch ../m
       
    28 hg checkout
       
    29 echo "a:" `hg dump a` "b:" `hg dump b`
       
    30 echo
       
    31 
       
    32 cd ../m
       
    33 echo "m     this1 that "
       
    34 echo "this1" > a
       
    35 hg commit
       
    36 echo "a:" `hg dump a` "b:" `hg dump b`
       
    37 echo
       
    38 
       
    39 cd ..
       
    40 echo "m1    this1 that "
       
    41 mkdir m1
       
    42 cd m1
       
    43 hg branch ../m
       
    44 hg checkout
       
    45 echo "a:" `hg dump a` "b:" `hg dump b`
       
    46 echo
       
    47 
       
    48 cd ../m1
       
    49 echo "m1    this1 that1"
       
    50 echo "that1" > b
       
    51 hg commit
       
    52 echo "a:" `hg dump a` "b:" `hg dump b`
       
    53 echo
       
    54 
       
    55 cd ../m2
       
    56 echo "m2    this  that2"
       
    57 echo "that2" > b
       
    58 hg commit
       
    59 echo "a:" `hg dump a` "b:" `hg dump b`
       
    60 echo
       
    61 
       
    62 cd ../m1
       
    63 echo "m1:m2 this1 that1 that2"
       
    64 hg merge ../m2 # b should conflict, a should be fine
       
    65 echo "a:" `hg dump a` "b:" `hg dump b`
       
    66 echo
       
    67 
       
    68 cd ../m2
       
    69 echo "m2    this2 that2"
       
    70 echo "this2" > a
       
    71 hg commit
       
    72 echo "a:" `hg dump a` "b:" `hg dump b`
       
    73 echo
       
    74 
       
    75 cd ../m2
       
    76 echo "m2:m this12 that2"
       
    77 hg merge ../m # a should conflict, b should be fine
       
    78 echo "a:" `hg dump a` "b:" `hg dump b`
       
    79 echo
       
    80 
       
    81 # now here's the interesting bit
       
    82 # if we choose ancestor by file, no conflicts
       
    83 # otherwise we've got two equally close ancestors, each with a conflict
       
    84 # if we go back to the root, we'll have both conflicts again
       
    85 echo "m2:m1 this12 that12"
       
    86 hg merge ../m1 # should be clean
       
    87 echo "a:" `hg dump a` "b:" `hg dump b`
       
    88 echo