Mercurial > public > mercurial-scm > hg
annotate tests/test-filebranch.out @ 4531:b51a8138292a
Avoid extra filelogs entries.
Right now, there are some situations in which localrepo.filecommit can
create filelog entries even though they're not needed. For example:
- permissions for a file have changed;
- qrefresh can create a filelog entry identical to its parent (see the
added test);
- convert-repo creates extra filelog entries in every merge where the
first parent has added files (for example, changeset ebebe9577a1a of
the kernel repo added extra filelog entries to files in the
arch/blackfin directory, even though the merge should only touch the
drivers/ata directory). This makes "hg log file" in a converted repo
less useful than it could be, since it may mention many merges that
don't actually touch that specific file.
They all come from the same basic problem: localrepo.commit (through
filecommit) creates new filelog entries for all files passed to it
(except for some cases during a merge).
Patch and test case provided by Benoit.
This should fix issue351.
author | Alexis S. L. Carvalho <alexis@cecm.usp.br> |
---|---|
date | Sat, 09 Jun 2007 01:04:28 -0300 |
parents | 966632304dde |
children | 8feb33c2d153 |
rev | line source |
---|---|
990 | 1 creating base |
2175
b2ae81a7df29
Make hg update more verbose by default (issue12)
Thomas Arendsen Hein <thomas@intevation.de>
parents:
2152
diff
changeset
|
2 4 files updated, 0 files merged, 0 files removed, 0 files unresolved |
990 | 3 creating branch a |
4 creating branch b | |
5 we shouldn't have anything but n state here | |
6 n 644 2 bar | |
7 n 644 3 baz | |
8 n 644 3 foo | |
9 n 644 2 quux | |
10 merging | |
11 pulling from ../a | |
12 searching for changes | |
13 adding changesets | |
14 adding manifests | |
15 adding file changes | |
1043 | 16 added 1 changesets with 2 changes to 2 files (+1 heads) |
2019
ced2d3620f95
add merge command. means same thing as "update -m".
Vadim Gelfer <vadim.gelfer@gmail.com>
parents:
1933
diff
changeset
|
17 (run 'hg heads' to see heads, 'hg merge' to merge) |
990 | 18 merging for foo |
19 resolving manifests | |
20 getting bar | |
21 merging foo | |
1922
6d50d6189269
ui: output the number of file updated/merged/removed/... on update
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1043
diff
changeset
|
22 1 files updated, 1 files merged, 0 files removed, 0 files unresolved |
6d50d6189269
ui: output the number of file updated/merged/removed/... on update
Benoit Boissinot <benoit.boissinot@ens-lyon.org>
parents:
1043
diff
changeset
|
23 (branch merge, don't forget to commit) |
990 | 24 we shouldn't have anything but foo in merge state here |
25 m 644 3 foo | |
26 main: we should have a merge here | |
27 rev offset length base linkrev nodeid p1 p2 | |
1933
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1922
diff
changeset
|
28 0 0 77 0 0 c36078bec30d 000000000000 000000000000 |
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1922
diff
changeset
|
29 1 77 73 1 1 182b283965f1 c36078bec30d 000000000000 |
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1922
diff
changeset
|
30 2 150 71 2 2 a6aef98656b7 c36078bec30d 000000000000 |
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1922
diff
changeset
|
31 3 221 72 3 3 0c2cc6fc80e2 182b283965f1 a6aef98656b7 |
993 | 32 log should show foo and quux changed |
2966
fb493241d7f6
Only show long hashes with --debug, not --verbose
Matt Mackall <mpm@selenic.com>
parents:
2175
diff
changeset
|
33 changeset: 3:0c2cc6fc80e2 |
993 | 34 tag: tip |
2966
fb493241d7f6
Only show long hashes with --debug, not --verbose
Matt Mackall <mpm@selenic.com>
parents:
2175
diff
changeset
|
35 parent: 1:182b283965f1 |
fb493241d7f6
Only show long hashes with --debug, not --verbose
Matt Mackall <mpm@selenic.com>
parents:
2175
diff
changeset
|
36 parent: 2:a6aef98656b7 |
993 | 37 user: test |
1933
7544700fd931
Use 'hg ci -d "1000000 0"' in tests to circumvent problem with leading zero.
Thomas Arendsen Hein <thomas@intevation.de>
parents:
1922
diff
changeset
|
38 date: Mon Jan 12 13:46:40 1970 +0000 |
993 | 39 files: foo quux |
40 description: | |
41 merge | |
42 | |
43 | |
990 | 44 foo: we should have a merge here |
45 rev offset length base linkrev nodeid p1 p2 | |
46 0 0 3 0 0 b8e02f643373 000000000000 000000000000 | |
47 1 3 4 1 1 2ffeddde1b65 b8e02f643373 000000000000 | |
48 2 7 4 2 2 33d1fb69067a b8e02f643373 000000000000 | |
49 3 11 4 3 3 aa27919ee430 2ffeddde1b65 33d1fb69067a | |
50 bar: we shouldn't have a merge here | |
51 rev offset length base linkrev nodeid p1 p2 | |
52 0 0 3 0 0 b8e02f643373 000000000000 000000000000 | |
53 1 3 4 1 2 33d1fb69067a b8e02f643373 000000000000 | |
54 baz: we shouldn't have a merge here | |
55 rev offset length base linkrev nodeid p1 p2 | |
56 0 0 3 0 0 b8e02f643373 000000000000 000000000000 | |
57 1 3 4 1 1 2ffeddde1b65 b8e02f643373 000000000000 | |
58 quux: we shouldn't have a merge here | |
59 rev offset length base linkrev nodeid p1 p2 | |
60 0 0 3 0 0 b8e02f643373 000000000000 000000000000 | |
61 1 3 5 1 3 6128c0f33108 b8e02f643373 000000000000 | |
993 | 62 manifest entries should match tips of all files |
63 33d1fb69067a0139622a3fa3b7ba1cdb1367972e 644 bar | |
64 2ffeddde1b65b4827f6746174a145474129fa2ce 644 baz | |
65 aa27919ee4303cfd575e1fb932dd64d75aa08be4 644 foo | |
66 6128c0f33108e8cfbb4e0824d13ae48b466d7280 644 quux | |
990 | 67 everything should be clean now |
68 checking changesets | |
69 checking manifests | |
70 crosschecking files in changesets and manifests | |
71 checking files | |
72 4 files, 4 changesets, 10 total revisions |