Mercurial > hg
annotate tests/test-diff-copy-depth.t @ 16365:5d61e007d957
mq: use exact matching in the second dirstate walking for efficiency of 'qnew'
'hg qnew' with pattern/-I/-X creates matching object with them, and
uses it twice for 'dirstate.walk()': via 'repo.status()' and
'repo.commit()'.
this may cause full manifest scan in the second 'dirstate.walk()',
even though mq already knows complete target filenames at the first
'dirstate.walk()'.
this patch creates exact matching object also in this case, and use it
at 'repo.commit()' invocation to avoid full manifest scan in the
second 'dirstate.walk()'.
even though 'inclsubs' is added to 'pats' for original matching
object, it is also passed to exact matching object, because
subrepositories are deleted from result of 'dirstate.walk()' at the
end of it.
author | FUJIWARA Katsunori <foozy@lares.dti.ne.jp> |
---|---|
date | Thu, 05 Apr 2012 23:52:06 +0900 |
parents | bca69641de61 |
children |
rev | line source |
---|---|
12150
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
1 $ for i in aaa zzz; do |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
2 > hg init t |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
3 > cd t |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
4 > |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
5 > echo |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
6 > echo "-- With $i" |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
7 > |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
8 > touch file |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
9 > hg add file |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
10 > hg ci -m "Add" |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
11 > |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
12 > hg cp file $i |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
13 > hg ci -m "a -> $i" |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
14 > |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
15 > hg cp $i other-file |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
16 > echo "different" >> $i |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
17 > hg ci -m "$i -> other-file" |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
18 > |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
19 > hg cp other-file somename |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
20 > |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
21 > echo "Status": |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
22 > hg st -C |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
23 > echo |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
24 > echo "Diff:" |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
25 > hg diff -g |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
26 > |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
27 > cd .. |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
28 > rm -rf t |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
29 > done |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
30 |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
31 -- With aaa |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
32 Status: |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
33 A somename |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
34 other-file |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
35 |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
36 Diff: |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
37 diff --git a/other-file b/somename |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
38 copy from other-file |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
39 copy to somename |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
40 |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
41 -- With zzz |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
42 Status: |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
43 A somename |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
44 other-file |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
45 |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
46 Diff: |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
47 diff --git a/other-file b/somename |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
48 copy from other-file |
bca69641de61
tests: unify test-diff-copy-depth
Adrian Buehlmann <adrian@cadifra.com>
parents:
6489
diff
changeset
|
49 copy to somename |
6424 | 50 |
51 |