Mercurial > hgsubversion
diff hgsubversion/replay.py @ 962:8648ccfb8325
editor: process missing files with regular files
Missing files were stored directly in RevisionMeta and resolved after
the revision was replayed. It means the missing files set was no pruned
by delete_entry() actions or by the filemap, and some of them were
fetched for no reason.
Say you convert:
A branch/foo/bar (from trunk/foo/bar:123)
with a filemap excluding "foo/bar". Since the directory was excluded in
trunk the files cannot be found and were marked as missing even though
they were discarded afterwards.
author | Patrick Mezard <patrick@mezard.eu> |
---|---|
date | Sat, 20 Oct 2012 22:22:02 +0200 |
parents | 502613f6b583 |
children | 67e11b650e94 |
line wrap: on
line diff
--- a/hgsubversion/replay.py +++ b/hgsubversion/replay.py @@ -72,6 +72,7 @@ def _convert_rev(ui, meta, svn, r, tbdel editor = meta.editor editor.current.clear() editor.current.rev = r + editor.setsvn(svn) if firstrun and meta.revmap.oldest <= 0: # We know nothing about this project, so fetch everything before @@ -83,15 +84,12 @@ def _convert_rev(ui, meta, svn, r, tbdel editor.close() current = editor.current - current.findmissing(svn) updateexternals(ui, meta, current) if current.exception is not None: # pragma: no cover traceback.print_exception(*current.exception) raise ReplayException() - if current.missing: - raise MissingPlainTextError() files_to_commit = current.files() branch_batches = {}