tests/test-remove.out
author David Greenaway <hg-dev@davidgreenaway.com>
Sat, 03 Apr 2010 11:58:16 +1100
changeset 11060 e6df01776e08
parent 9572 1f665246dab3
child 12129 07ac2a560fce
permissions -rw-r--r--
findrenames: Optimise "addremove -s100" by matching files by their SHA1 hashes. We speed up 'findrenames' for the usecase when a user specifies they want a similarity of 100% by matching files by their exact SHA1 hash value. This reduces the number of comparisons required to find exact matches from O(n^2) to O(n). While it would be nice if we could just use mercurial's pre-calculated SHA1 hash for existing files, this hash includes the file's ancestor information making it unsuitable for our purposes. Instead, we calculate the hash of old content from scratch. The following benchmarks were taken on the current head of crew: addremove 100% similarity: rm -rf *; hg up -C; mv tests tests.new hg --time addremove -s100 --dry-run before: real 176.350 secs (user 128.890+0.000 sys 47.430+0.000) after: real 2.130 secs (user 1.890+0.000 sys 0.240+0.000) addremove 75% similarity: rm -rf *; hg up -C; mv tests tests.new; \ for i in tests.new/*; do echo x >> $i; done hg --time addremove -s75 --dry-run before: real 264.560 secs (user 215.130+0.000 sys 49.410+0.000) after: real 218.710 secs (user 172.790+0.000 sys 45.870+0.000)
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
     1
% file not managed
8533
6062c6362b2e remove: warn if unversionned files are specified (issue1454)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 8518
diff changeset
     2
not removing foo: file is untracked
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
     3
? foo
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
     4
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
     5
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
     6
% 00 state added, options none
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
     7
not removing bar: file has been marked for add (use -f to force removal)
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
     8
A bar
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
     9
./bar
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    10
./foo
8518
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    11
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    12
% 01 state clean, options none
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    13
R foo
8518
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    14
? bar
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    15
./bar
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    16
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    17
% 02 state modified, options none
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    18
not removing foo: file is modified (use -f to force removal)
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    19
M foo
8518
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    20
? bar
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    21
./bar
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    22
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    23
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    24
% 03 state missing, options none
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    25
R foo
8518
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    26
? bar
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    27
./bar
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    28
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    29
% 10 state added, options -f
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    30
? bar
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    31
./bar
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    32
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    33
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    34
% 11 state clean, options -f
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    35
R foo
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    36
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    37
% 12 state modified, options -f
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    38
R foo
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    39
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    40
% 13 state missing, options -f
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    41
R foo
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    42
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    43
% 20 state added, options -A
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    44
not removing bar: file still exists (use -f to force removal)
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    45
A bar
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    46
./bar
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    47
./foo
8518
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    48
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    49
% 21 state clean, options -A
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    50
not removing foo: file still exists (use -f to force removal)
8518
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    51
? bar
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    52
./bar
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    53
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    54
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    55
% 22 state modified, options -A
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    56
not removing foo: file still exists (use -f to force removal)
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    57
M foo
8518
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    58
? bar
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    59
./bar
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    60
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    61
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    62
% 23 state missing, options -A
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    63
R foo
8518
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    64
? bar
3f4f14eab085 update --clean: do not unlink added files (issue575)
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents: 6761
diff changeset
    65
./bar
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    66
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    67
% 30 state added, options -Af
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    68
? bar
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    69
./bar
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    70
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    71
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    72
% 31 state clean, options -Af
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    73
R foo
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    74
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    75
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    76
% 32 state modified, options -Af
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    77
R foo
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    78
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    79
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    80
% 33 state missing, options -Af
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    81
R foo
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    82
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    83
adding test/bar
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    84
adding test/foo
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    85
% dir, options none
6761
cb981fc955fb remove: work directly off status
Matt Mackall <mpm@selenic.com>
parents: 6356
diff changeset
    86
removing test/bar
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    87
removing test/foo
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    88
R test/bar
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    89
R test/foo
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    90
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    91
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    92
% dir, options -f
6761
cb981fc955fb remove: work directly off status
Matt Mackall <mpm@selenic.com>
parents: 6356
diff changeset
    93
removing test/bar
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    94
removing test/foo
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    95
R test/bar
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    96
R test/foo
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
    97
./foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    98
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
    99
% dir, options -A
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
   100
not removing test/foo: file still exists (use -f to force removal)
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
   101
removing test/bar
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
   102
R test/bar
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
   103
./foo
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
   104
./test/foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
   105
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
   106
% dir, options -Af
6761
cb981fc955fb remove: work directly off status
Matt Mackall <mpm@selenic.com>
parents: 6356
diff changeset
   107
removing test/bar
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
   108
removing test/foo
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
   109
R test/bar
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
   110
R test/foo
6356
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
   111
./foo
b34b876d1f6f test-remove: make it pass on Mac OS X 10.5
Florent Guillaume <fg@nuxeo.com>
parents: 6346
diff changeset
   112
./test/foo
6346
8e3b651382f5 improved semantics for remove (issue438)
Dirkjan Ochtman <dirkjan@ochtman.nl>
parents: 6338
diff changeset
   113
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
9572
1f665246dab3 windows: fix unlink() not dropping empty tree (issue1861)
Patrick Mezard <pmezard@gmail.com>
parents: 8533
diff changeset
   114
test remove dropping empty trees (issue1861)
1f665246dab3 windows: fix unlink() not dropping empty tree (issue1861)
Patrick Mezard <pmezard@gmail.com>
parents: 8533
diff changeset
   115
adding issue1861/b/c/y
1f665246dab3 windows: fix unlink() not dropping empty tree (issue1861)
Patrick Mezard <pmezard@gmail.com>
parents: 8533
diff changeset
   116
adding issue1861/x
1f665246dab3 windows: fix unlink() not dropping empty tree (issue1861)
Patrick Mezard <pmezard@gmail.com>
parents: 8533
diff changeset
   117
removing issue1861/b/c/y
1f665246dab3 windows: fix unlink() not dropping empty tree (issue1861)
Patrick Mezard <pmezard@gmail.com>
parents: 8533
diff changeset
   118
x