view tests/test-copy.out @ 5149:ad6b97132b81

merge: fix a copy detection bug (issue672) When merging rev1 and rev2, we want to search for copies that happened in rev1 but not in rev2 and vice-versa. We were starting the search at rev1/rev2 and then going back, stopping as soon as we reached the revno of the ancestor, but that can miss some cases (see the new test-issue672). Now we calculate the revisions that are ancestors of rev1 or rev2 (but not both) and make sure the search doesn't stop too early. Simplified test provided by mpm, based on a test case provided by Edward Lee.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Sun, 12 Aug 2007 12:15:10 -0300
parents c0b449154a90
children
line wrap: on
line source

A b
b
 b: copy a:b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3
we should see two history entries
changeset:   1:386a3cc01532
tag:         tip
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
files:       b
description:
2


changeset:   0:33aaa84a386b
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
files:       a
description:
1


we should see one log entry for a
changeset:   0:33aaa84a386b
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     1

this should show a revision linked to changeset 0
   rev    offset  length   base linkrev nodeid       p1           p2
     0         0       3      0       0 b789fdd96dc2 000000000000 000000000000
we should see one log entry for b
changeset:   1:386a3cc01532
tag:         tip
user:        test
date:        Mon Jan 12 13:46:40 1970 +0000
summary:     2

this should show a revision linked to changeset 1
   rev    offset  length   base linkrev nodeid       p1           p2
     0         0      65      0       1 9a263dd772e0 000000000000 000000000000
this should show the rename information in the metadata
copyrev: b789fdd96dc2f3bd229c1dd8eedf0fc60e2b68e3
copy: a
ed156f22f0a6fde642de0b5eba0cbbb2  .hg/store/data/b.i
60b725f10c9c85c70d97880dfe8191b3  bsum
60b725f10c9c85c70d97880dfe8191b3  asum
checking changesets
checking manifests
crosschecking files in changesets and manifests
checking files
2 files, 2 changesets, 2 total revisions