I wrote:
> I'm a bit disappointed by the fact that we get either of these. I had
> gathered from Max's comments that the dead-revision-at-the-base-of-the-
> branch trick is considered standard in newer CVS versions, and so I'd
> hoped that cvs2git would understand the construct and not generate
> either of these commits. Possibly the hacked-up revisions I inserted
> are enough different from the regular kind to confuse it.
Hah: a bit of digging in the cvs2svn sources found this:
def _is_unneeded_initial_branch_delete(self, lod_items, metadata_db):
"""Return True iff the initial revision in LOD_ITEMS can be deleted."""
if not lod_items.cvs_revisions:
return False
cvs_revision = lod_items.cvs_revisions[0]
if cvs_revision.ntdbr:
return False
if not isinstance(cvs_revision, CVSRevisionAbsent):
return False
if cvs_revision.branch_ids:
return False
log_msg = metadata_db[cvs_revision.metadata_id].log_msg
return bool(re.match(
r'file .* was added on branch .* on '
r'\d{4}\-\d{2}\-\d{2} \d{2}\:\d{2}\:\d{2}( [\+\-]\d{4})?'
'\n$',
log_msg,
))
So it looks like I have to make the dead revisions' log messages match
that regexp. Off to make another try.
regards, tom lane
--
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers