tests/test-merge-internal-tools-pattern
changeset 6521 a3668330f14a
child 12156 4c94b6d0fb1c
equal deleted inserted replaced
6520:ba0b2dacc623 6521:a3668330f14a
       
     1 #!/bin/sh
       
     2 
       
     3 # make sure that the internal merge tools (internal:fail, internal:local, and
       
     4 # internal:other) are used when matched by a merge-pattern in hgrc
       
     5 
       
     6 unset HGMERGE # make sure HGMERGE doesn't interfere with the test
       
     7 
       
     8 hg init
       
     9 
       
    10 echo "# initial file contents"
       
    11 echo "line 1" > f
       
    12 echo "line 2" >> f
       
    13 echo "line 3" >> f
       
    14 hg commit -Am "revision 0" -d "1000000 0"
       
    15 cat f
       
    16 echo "# branch 1: editing line 1"
       
    17 sed 's/line 1/first line/' f > f.new
       
    18 mv f.new f
       
    19 hg commit -Am "edited first line" -d "1000000 0"
       
    20 
       
    21 echo "# branch 2: editing line 3"
       
    22 hg update 0
       
    23 sed 's/line 3/third line/' f > f.new
       
    24 mv f.new f
       
    25 hg commit -Am "edited third line" -d "1000000 0"
       
    26 
       
    27 echo "# merge using internal:fail tool"
       
    28 echo "[merge-patterns]" > .hg/hgrc
       
    29 echo "* = internal:fail" >> .hg/hgrc
       
    30 hg merge
       
    31 cat f
       
    32 hg stat
       
    33 
       
    34 echo "# merge using internal:local tool"
       
    35 hg update -C 2
       
    36 sed 's/internal:fail/internal:local/' .hg/hgrc > .hg/hgrc.new
       
    37 mv .hg/hgrc.new .hg/hgrc
       
    38 hg merge
       
    39 cat f
       
    40 hg stat
       
    41 
       
    42 echo "# merge using internal:other tool"
       
    43 hg update -C 2
       
    44 sed 's/internal:local/internal:other/' .hg/hgrc > .hg/hgrc.new
       
    45 mv .hg/hgrc.new .hg/hgrc
       
    46 hg merge
       
    47 cat f
       
    48 hg stat
       
    49 
       
    50 echo "# merge using default tool"
       
    51 hg update -C 2
       
    52 rm .hg/hgrc
       
    53 hg merge
       
    54 cat f
       
    55 hg stat
       
    56