author | Matt Mackall <mpm@selenic.com> |
Wed, 30 Nov 2011 16:20:07 -0600 | |
changeset 15588 | 632f4be4d1f3 |
parent 15442 | db0340f4b507 |
child 15625 | efdcce3fd2d5 |
permissions | -rw-r--r-- |
15442
db0340f4b507
tests: use 'hghave execbit' for tests that manipulate x bit in file system
Mads Kiilerich <mads@kiilerich.com>
parents:
15441
diff
changeset
|
1 |
$ "$TESTDIR/hghave" symlink execbit || exit 80 |
15441
e0348815e806
tests: use 'hghave symlink' for tests using symlinks
Mads Kiilerich <mads@kiilerich.com>
parents:
12279
diff
changeset
|
2 |
|
12279 | 3 |
$ hg init |
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
4 |
|
12279 | 5 |
$ echo a > a |
6 |
$ hg ci -Amadd |
|
7 |
adding a |
|
8 |
||
9 |
$ chmod +x a |
|
10 |
$ hg ci -mexecutable |
|
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
11 |
|
12279 | 12 |
$ hg up 0 |
13 |
0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
14 |
$ rm a |
|
15 |
$ ln -s symlink a |
|
16 |
$ hg ci -msymlink |
|
17 |
created new head |
|
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
18 |
|
12279 | 19 |
$ hg merge --debug |
20 |
searching for copies back to rev 1 |
|
21 |
resolving manifests |
|
22 |
overwrite None partial False |
|
23 |
ancestor c334dc3be0da local 521a1e40188f+ remote 3574f3e69b1c |
|
24 |
conflicting flags for a |
|
25 |
(n)one, e(x)ec or sym(l)ink? n |
|
26 |
a: update permissions -> e |
|
27 |
updating: a 1/1 files (100.00%) |
|
28 |
0 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
29 |
(branch merge, don't forget to commit) |
|
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
30 |
|
12279 | 31 |
|
32 |
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
|
33 |
|
12279 | 34 |
$ if [ -h a ]; then |
35 |
> echo a is a symlink |
|
36 |
> $TESTDIR/readlink.py a |
|
37 |
> elif [ -x a ]; then |
|
38 |
> echo a is executable |
|
39 |
> else |
|
40 |
> echo "a has no flags (default for conflicts)" |
|
41 |
> fi |
|
42 |
a has no flags (default for conflicts) |
|
43 |
||
44 |
$ hg update -C 1 |
|
45 |
1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
46 |
|
12279 | 47 |
$ hg merge --debug |
48 |
searching for copies back to rev 1 |
|
49 |
resolving manifests |
|
50 |
overwrite None partial False |
|
51 |
ancestor c334dc3be0da local 3574f3e69b1c+ remote 521a1e40188f |
|
52 |
conflicting flags for a |
|
53 |
(n)one, e(x)ec or sym(l)ink? n |
|
54 |
a: remote is newer -> g |
|
55 |
updating: a 1/1 files (100.00%) |
|
56 |
getting a |
|
57 |
1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
|
58 |
(branch merge, don't forget to commit) |
|
5503
6f26c7677463
Test a merge of a symlink against an executable file.
Bryan O'Sullivan <bos@serpentine.com>
parents:
diff
changeset
|
59 |
|
12279 | 60 |
|
61 |
Symlink is other parent, executable is local: |
|
62 |
||
63 |
$ if [ -h a ]; then |
|
64 |
> echo a is a symlink |
|
65 |
> $TESTDIR/readlink.py a |
|
66 |
> elif [ -x a ]; then |
|
67 |
> echo a is executable |
|
68 |
> else |
|
69 |
> echo "a has no flags (default for conflicts)" |
|
70 |
> fi |
|
71 |
a has no flags (default for conflicts) |
|
72 |