tests/test-merge-types
author John Mulligan <phlogistonjohn@asynchrono.us>
Wed, 14 Jan 2009 21:47:38 -0500
changeset 7654 816b708f23af
parent 5710 026eb80060d8
permissions -rwxr-xr-x
store all heads of a branch in the branch cache All heads of branches will be stored in a new cache file 'branchheads.cache' within the .hg directory. The old 'branch.cache' file from older versions will be ignored. The new cache contents are formatted line-by-line as '{node} {branchtag}\n'. This is the same as the previous format. Now, every head is recorded in an oldest -> tipmost order. The localrepo.branchheads function is reworked to use the data from the cache.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     1
#!/bin/sh
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     2
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     3
hg init
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     4
echo a > a
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
     5
hg ci -Amadd       # 0
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     6
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     7
chmod +x a
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
     8
hg ci -mexecutable # 1
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
     9
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    10
hg up 0
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    11
rm a
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    12
ln -s symlink a
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    13
hg ci -msymlink    # 2
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    14
hg merge --debug
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    15
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    16
echo % symlink is local parent, executable is other
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    17
5682
048889f8c7d1 Use test -h instead of test -L for portability
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5503
diff changeset
    18
if [ -h a ]; then
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    19
    echo a is a symlink
5683
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5682
diff changeset
    20
    $TESTDIR/readlink.py a
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    21
elif [ -x a ]; then
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    22
    echo a is executable
5710
026eb80060d8 update test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5701
diff changeset
    23
else
026eb80060d8 update test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5701
diff changeset
    24
    echo "a has no flags (default for conflicts)"
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    25
fi
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    26
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    27
hg update -C 1
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    28
hg merge --debug
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    29
5701
32c2832682a9 add --debug to test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5685
diff changeset
    30
echo % symlink is other parent, executable is local
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    31
5682
048889f8c7d1 Use test -h instead of test -L for portability
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5503
diff changeset
    32
if [ -h a ]; then
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    33
    echo a is a symlink
5683
396c7010b0cd Use common readlink.py instead of own implementations per test script.
Thomas Arendsen Hein <thomas@intevation.de>
parents: 5682
diff changeset
    34
    $TESTDIR/readlink.py a
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    35
elif [ -x a ]; then
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    36
    echo a is executable
5710
026eb80060d8 update test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5701
diff changeset
    37
else
026eb80060d8 update test-merge-types
Matt Mackall <mpm@selenic.com>
parents: 5701
diff changeset
    38
    echo "a has no flags (default for conflicts)"
5503
6f26c7677463 Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff changeset
    39
fi