[issue1558] CVS conversion includes synthetic "file ... added on branch ..." revisions

Greg Ward mercurial-bugs at selenic.com
Mon Mar 16 09:22:12 CDT 2009


New submission from Greg Ward <greg-hg at gerg.ca>:

Among CVS' many charming quirks is its behaviour when you add a file on a
branch.  Specifically, in that case it adds a dead trunk revision 1.1 so that
the branch has a root for that file:

  revision 1.1
  date: 2009-03-16 08:53:13 -0400;  author: greg;  state: dead;
  branches:  1.1.2;  1.1.4;
  file file2 was initially added on branch v1_0.

Even more amusing is what happens if you then merge that file to a later branch.
 E.g. in this example, I created 'file2' on branch 'v1_0', and then merged to
'v1_1'.  CVS creates another dead revision on 'v1_1':

  revision 1.1.4.1
  date: 2009-03-16 08:53:13 -0400;  author: greg;  state: dead;  lines: +0 -0;
  file file2 was added on branch v1_1 on 2009-03-16 12:53:18 +0000

When I "hg convert" this repository, both of these synthetic revisions are
converted to hg changesets with no changes.  That is, "hg convert" preserves
this annoying artifact of CVS as a changeset that contributes nothing.

I propose dropping such changesets at conversion time.

----------
messages: 8831
nosy: gward
priority: feature
status: unread
title: CVS conversion includes synthetic "file ... added on branch ..." revisions

____________________________________________________
Mercurial issue tracker <mercurial-bugs at selenic.com>
<http://www.selenic.com/mercurial/bts/issue1558>
____________________________________________________



More information about the Mercurial-devel mailing list