Mercurial > hg
annotate tests/test-merge1.out @ 11769:ca6cebd8734e stable
dirstate: ignore symlinks when fs cannot handle them (issue1888)
When the filesystem cannot handle the executable bit, we currently
ignore it completely when looking for modified files. Similarly, it is
impossible to set or clear the bit when the filesystem ignores it.
This patch makes Mercurial treat symbolic links the same way.
Symlinks are a little different since they manifest themselves as
small files containing a filename (the symlink target). On Windows,
these files show up as regular files, and on Linux and Mac they show
up as real symlinks.
Issue1888 presents a case where the symlink files are better ignored
from the Windows side. A Linux client creates symlinks in a working
copy which is shared over a network between Linux and Windows clients.
The Samba server is helpful and defererences the symlink when the
Windows client looks at it. This means that Mercurial on the Windows
side sees file content instead of a file name in the symlink, and
hence flags the link as modified. Ignoring the change would be much
more helpful, similarly to how Mercurial does not report any changes
when executable bits are ignored in a checkout on Windows.
An initial checkout of a symbolic link on a file system that cannot
handle symbolic links will still result in a regular file containing
the target file name as its content. Sharing such a checkout with a
Linux client will not turn the file into a symlink automatically, but
'hg revert' can fix that. After the revert, the Windows client will
see the correct file content (provided by the Samba server when it
follows the link on the Linux side) and otherwise ignore the change.
Running 'hg perfstatus' 10 times gives these results:
Before: After:
min: 0.544703 min: 0.546549
med: 0.547592 med: 0.548881
avg: 0.549146 avg: 0.548549
max: 0.564112 max: 0.551504
The median time is increased about 0.24%.
author | Martin Geisler <mg@aragost.com> |
---|---|
date | Mon, 09 Aug 2010 15:31:56 +0200 |
parents | d8143769e1d4 |
children |
rev | line source |
---|---|
2175
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
1 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
6336
4b0c9c674707
warn about new heads on commit (issue842)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
5863
diff
changeset
|
2 created new head |
1236
67a28636ea64
Fix bug with co -C across branches, update tests
mpm@selenic.com
parents:
925
diff
changeset
|
3 %% no merges expected |
8387
50b6af595e0c
merge: add -S/--show option to review revisions without merging
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6336
diff
changeset
|
4 changeset: 1:4ee19afe4659 |
50b6af595e0c
merge: add -S/--show option to review revisions without merging
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6336
diff
changeset
|
5 user: test |
50b6af595e0c
merge: add -S/--show option to review revisions without merging
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6336
diff
changeset
|
6 date: Mon Jan 12 13:46:40 1970 +0000 |
50b6af595e0c
merge: add -S/--show option to review revisions without merging
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6336
diff
changeset
|
7 summary: commit #1 |
50b6af595e0c
merge: add -S/--show option to review revisions without merging
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
6336
diff
changeset
|
8 |
3400
d2b55e3c4e25
merge: if filemerge skips merge, report as updated
Matt Mackall <mpm@selenic.com>
parents:
3331
diff
changeset
|
9 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
2175
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
10 (branch merge, don't forget to commit) |
3330
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
11 diff -r d9e5953b9dec b |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
12 --- /dev/null |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
13 +++ b/b |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
14 @@ -0,0 +1,1 @@ |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
15 +This is file b1 |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
16 M b |
2175
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
17 0 files updated, 0 files merged, 1 files removed, 0 files unresolved |
6336
4b0c9c674707
warn about new heads on commit (issue842)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
5863
diff
changeset
|
18 created new head |
1581
db10b7114de0
abort when merging two heads and repository has local changes
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1236
diff
changeset
|
19 %% merge should fail |
5670
840e2b315c1f
Fix misleading error and prompts during update/merge (issue556)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
3618
diff
changeset
|
20 abort: untracked file in working directory differs from file in requested revision: 'b' |
1236
67a28636ea64
Fix bug with co -C across branches, update tests
mpm@selenic.com
parents:
925
diff
changeset
|
21 %% merge of b expected |
407
0e0d0670b2bc
[PATCH] Merging identical changes from another branch
mpm@selenic.com
parents:
diff
changeset
|
22 merging for b |
0e0d0670b2bc
[PATCH] Merging identical changes from another branch
mpm@selenic.com
parents:
diff
changeset
|
23 merging b |
2175
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
24 0 files updated, 1 files merged, 0 files removed, 0 files unresolved |
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
25 (branch merge, don't forget to commit) |
3330
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
26 diff -r d9e5953b9dec b |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
27 --- /dev/null |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
28 +++ b/b |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
29 @@ -0,0 +1,1 @@ |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
30 +This is file b2 |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
31 M b |
1236
67a28636ea64
Fix bug with co -C across branches, update tests
mpm@selenic.com
parents:
925
diff
changeset
|
32 %% |
2175
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
33 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
6336
4b0c9c674707
warn about new heads on commit (issue842)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
5863
diff
changeset
|
34 created new head |
1236
67a28636ea64
Fix bug with co -C across branches, update tests
mpm@selenic.com
parents:
925
diff
changeset
|
35 Contents of b should be "this is file b1" |
430 | 36 This is file b1 |
1581
db10b7114de0
abort when merging two heads and repository has local changes
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1236
diff
changeset
|
37 %% merge fails |
8545
3682a19bb637
merge: give hint as to how to discover uncommitted changes
Steve Borho <steve@borho.org>
parents:
8387
diff
changeset
|
38 abort: outstanding uncommitted changes (use 'hg status' to list changes) |
1236
67a28636ea64
Fix bug with co -C across branches, update tests
mpm@selenic.com
parents:
925
diff
changeset
|
39 %% merge expected! |
3400
d2b55e3c4e25
merge: if filemerge skips merge, report as updated
Matt Mackall <mpm@selenic.com>
parents:
3331
diff
changeset
|
40 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
2175
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
41 (branch merge, don't forget to commit) |
3330
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
42 diff -r c1dd73cbf59f b |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
43 --- a/b |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
44 +++ b/b |
5863
3d1f9dcecdea
diff: don't show function name by default
Matt Mackall <mpm@selenic.com>
parents:
5670
diff
changeset
|
45 @@ -1,1 +1,1 @@ |
3330
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
46 -This is file b1 |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
47 +This is file b22 |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
48 M b |
2175
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
49 1 files updated, 0 files merged, 0 files removed, 0 files unresolved |
6336
4b0c9c674707
warn about new heads on commit (issue842)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents:
5863
diff
changeset
|
50 created new head |
1581
db10b7114de0
abort when merging two heads and repository has local changes
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1236
diff
changeset
|
51 %% merge of b should fail |
8545
3682a19bb637
merge: give hint as to how to discover uncommitted changes
Steve Borho <steve@borho.org>
parents:
8387
diff
changeset
|
52 abort: outstanding uncommitted changes (use 'hg status' to list changes) |
1236
67a28636ea64
Fix bug with co -C across branches, update tests
mpm@selenic.com
parents:
925
diff
changeset
|
53 %% merge of b expected |
407
0e0d0670b2bc
[PATCH] Merging identical changes from another branch
mpm@selenic.com
parents:
diff
changeset
|
54 merging for b |
0e0d0670b2bc
[PATCH] Merging identical changes from another branch
mpm@selenic.com
parents:
diff
changeset
|
55 merging b |
2175
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
56 0 files updated, 1 files merged, 0 files removed, 0 files unresolved |
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1995
diff
changeset
|
57 (branch merge, don't forget to commit) |
3330
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
58 diff -r c1dd73cbf59f b |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
59 --- a/b |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
60 +++ b/b |
5863
3d1f9dcecdea
diff: don't show function name by default
Matt Mackall <mpm@selenic.com>
parents:
5670
diff
changeset
|
61 @@ -1,1 +1,1 @@ |
3330
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
62 -This is file b1 |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
63 +This is file b33 |
49966b5ab16f
fix traceback of extdiff after a merge
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
2973
diff
changeset
|
64 M b |