Mercurial > hg > mercurial-crew-with-dirclash
annotate tests/test-issue322 @ 4492:b79cdb7f0597
patch.diff: avoid calling workingctx().manifest()
Right now, to generate the manifest of the working dir, we have to
perform a full walk of the working dir, which will be very slow,
especially if we're interested in only a small part of it.
Since we use the manifest only to find out the mode of files for git
patches, manually build an execf function to do it.
This should fix issue567.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Sun, 03 Jun 2007 14:38:52 -0300 |
parents | 9dcf9d45cab8 |
children | 7a7d4937272b |
rev | line source |
---|---|
2946 | 1 #!/bin/sh |
2 # http://www.selenic.com/mercurial/bts/issue322 | |
3 | |
2949
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
4 echo % file replaced with directory |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
5 |
2946 | 6 hg init a |
7 cd a | |
8 echo a > a | |
9 hg commit -Ama | |
10 rm a | |
11 mkdir a | |
12 echo a > a/a | |
13 | |
2949
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
14 echo % should fail - would corrupt dirstate |
2946 | 15 hg add a/a |
2949
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
16 |
2946 | 17 cd .. |
18 | |
2949
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
19 echo % directory replaced with file |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
20 |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
21 hg init c |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
22 cd c |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
23 mkdir a |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
24 echo a > a/a |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
25 hg commit -Ama |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
26 |
3988
9dcf9d45cab8
Don't use -f for rm in tests where not needed. Drop /bin/ from /bin/rm.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
2953
diff
changeset
|
27 rm -r a |
2949
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
28 echo a > a |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
29 |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
30 echo % should fail - would corrupt dirstate |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
31 hg add a |
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
32 |
2953 | 33 cd .. |
34 | |
35 echo % directory replaced with file | |
2949
7356fa3cff2c
add other dir/file case to test for issue322.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
2946
diff
changeset
|
36 |
2953 | 37 hg init d |
38 cd d | |
39 mkdir b | |
40 mkdir b/c | |
41 echo a > b/c/d | |
42 hg commit -Ama | |
3988
9dcf9d45cab8
Don't use -f for rm in tests where not needed. Drop /bin/ from /bin/rm.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
2953
diff
changeset
|
43 rm -r b |
2953 | 44 echo a > b |
45 | |
46 echo % should fail - would corrupt dirstate | |
47 hg add b | |
48 | |
49 exit 0 |