view tests/test-parents.out @ 5377:756a43a30e34

convert: readd --filemap To handle merges correctly, this revision adds a filemap_source class that wraps a converter_source and does the work necessary to calculate the subgraph we're interested in. The wrapped converter_source must provide a new getchangedfiles method that, given a revision rev, and an index N, returns the list of files that are different in rev and its Nth parent. The implementation depends on the ability to skip some revisions and to change the parents field of the commit objects that we returned earlier. To make the conversion restartable, we assume the revisons in the revmapfile are topologically sorted.
author Alexis S. L. Carvalho <alexis@cecm.usp.br>
date Thu, 04 Oct 2007 23:21:37 -0300
parents 5a4824f6665c
children
line wrap: on
line source

% no working directory
adding a
adding b
adding c
1 files updated, 0 files merged, 1 files removed, 0 files unresolved
adding c
2 files updated, 0 files merged, 0 files removed, 0 files unresolved
% hg parents
changeset:   3:02d851b7e549
user:        test
date:        Thu Jan 01 00:00:03 1970 +0000
summary:     c

% hg parents a
changeset:   1:d786049f033a
user:        test
date:        Thu Jan 01 00:00:01 1970 +0000
summary:     a

% hg parents c, single revision
changeset:   3:02d851b7e549
user:        test
date:        Thu Jan 01 00:00:03 1970 +0000
summary:     c

% hg parents -r 3 c
abort: 'c' not found in manifest!
% hg parents -r 2
changeset:   1:d786049f033a
user:        test
date:        Thu Jan 01 00:00:01 1970 +0000
summary:     a

% hg parents -r 2 a
changeset:   1:d786049f033a
user:        test
date:        Thu Jan 01 00:00:01 1970 +0000
summary:     a

% hg parents -r 2 ../a
abort: ../a not under root
% cd dir; hg parents -r 2 ../a
changeset:   1:d786049f033a
user:        test
date:        Thu Jan 01 00:00:01 1970 +0000
summary:     a

% hg parents -r 2 path:a
changeset:   1:d786049f033a
user:        test
date:        Thu Jan 01 00:00:01 1970 +0000
summary:     a

% hg parents -r 2 glob:a
abort: can only specify an explicit file name
% merge working dir with 2 parents, hg parents c
merging c
0 files updated, 1 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
changeset:   3:02d851b7e549
user:        test
date:        Thu Jan 01 00:00:03 1970 +0000
summary:     c

changeset:   4:48cee28d4b4e
tag:         tip
parent:      1:d786049f033a
user:        test
date:        Thu Jan 01 00:00:04 1970 +0000
summary:     c2

% merge working dir with 1 parent, hg parents
0 files updated, 0 files merged, 1 files removed, 0 files unresolved
1 files updated, 0 files merged, 0 files removed, 0 files unresolved
(branch merge, don't forget to commit)
changeset:   2:6cfac479f009
user:        test
date:        Thu Jan 01 00:00:02 1970 +0000
summary:     b

changeset:   4:48cee28d4b4e
tag:         tip
parent:      1:d786049f033a
user:        test
date:        Thu Jan 01 00:00:04 1970 +0000
summary:     c2

% merge working dir with 1 parent, hg parents c
changeset:   4:48cee28d4b4e
tag:         tip
parent:      1:d786049f033a
user:        test
date:        Thu Jan 01 00:00:04 1970 +0000
summary:     c2