tests/test-tags.out
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
Sat, 09 Jun 2007 01:04:28 -0300
changeset 4531 b51a8138292a
parent 4482 99f411ba0380
child 4651 7176f278d6f9
permissions -rw-r--r--
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.

unknown
0 files updated, 0 files merged, 0 files removed, 0 files unresolved
0acdaf898367 tip
tip                                0:0acdaf898367
This is a local tag with a really long name!     0:0acdaf898367
0acdaf8983679e0aac16e811534eb49d7ee1f2b4 first
tip                                1:8a3ca90d111d
first                              0:0acdaf898367
8a3ca90d111d tip
M a
8a3ca90d111d+ tip
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
0acdaf898367+ first
0acdaf898367+ first
M a
8216907a933d tip
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
8216907a933d+8a3ca90d111d+ tip
M .hgtags
tip                                6:e2174d339386
first                              0:0acdaf898367
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
.hgtags@c071f74ab5eb, line 2: cannot parse entry
.hgtags@c071f74ab5eb, line 4: node 'foo' is not well formed
.hgtags@4ca6f1b1a68c, line 2: node 'x' is not well formed
localtags, line 1: tag 'invalid' refers to unknown node
tip                                8:4ca6f1b1a68c
first                              0:0acdaf898367
changeset:   8:4ca6f1b1a68c
.hgtags@c071f74ab5eb, line 2: cannot parse entry
.hgtags@c071f74ab5eb, line 4: node 'foo' is not well formed
.hgtags@4ca6f1b1a68c, line 2: node 'x' is not well formed
localtags, line 1: tag 'invalid' refers to unknown node
tag:         tip
parent:      3:b2ef3841386b
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     head

1 files updated, 0 files merged, 0 files removed, 0 files unresolved
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
tip                                4:36195b728445
bar                                1:b204a97e6e8d
changeset:   5:57e1983b4a60
tag:         tip
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     Removed tag bar

tip                                5:57e1983b4a60
tip                                5:d8bb4d1eff25
bar                                0:b409d9da318e
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
tip                                6:b5ff9d142648
bar                                0:b409d9da318e
abort: a tag named bar already exists (use -f to force)
tip                                6:b5ff9d142648
bar                                0:b409d9da318e
adding foo
tip                                3:ca8479b4351c
bar                                2:72b852876a42
% bar should still point to rev 2
tip                                4:40af5d225513
bar                                2:72b852876a42