[prev in list] [next in list] [prev in thread] [next in thread] 

List:       subversion-issues
Subject:    =?UTF-8?B?W0lzc3VlIDE1MTBdICBjdnMyc3ZuOiBObyBzdXBwb3J0IGZvciB2ZQ==?=
From:       ovek () tigris ! org
Date:       2003-12-31 14:50:21
Message-ID: 20031231145021.13923.qmail () tigris ! org
[Download RAW message or body]

http://subversion.tigris.org/issues/show_bug.cgi?id=1510






------- Additional comments from ovek@tigris.org Wed Dec 31 06:50:21 -0800 2003 -------
Recipe.

$ export CVSROOT=~/cvs-test-repo
$ echo foo > a.txt
$ cvs import -m"Import 1" vendor-test my-vendor import-1
$ echo bar > a.txt
$ cvs import -m"Import 2" vendor-test my-vendor import-2
$ echo baz > a.txt
$ cvs import -m"Import 3" vendor-test my-vendor import-3
$ cvs co vendor-test
$ cat vendor-test/a.txt
baz
$ cvs log vendor-test/a.txt

RCS file: /home/ovek/cvs-test-repo/vendor-test/a.txt,v
Working file: a.txt
head: 1.1
branch: 1.1.1
locks: strict
access list:
symbolic names:
        import-3: 1.1.1.3
        import-2: 1.1.1.2
        import-1: 1.1.1.1
        my-vendor: 1.1.1
keyword substitution: kv
total revisions: 4;     selected revisions: 4
description:
----------------------------
revision 1.1
date: 2003/12/31 14:08:46;  author: ovek;  state: Exp;
branches:  1.1.1;
Initial revision
----------------------------
revision 1.1.1.3
date: 2003/12/31 14:10:08;  author: ovek;  state: Exp;  lines: +1 -1
Import 3
----------------------------
revision 1.1.1.2
date: 2003/12/31 14:09:58;  author: ovek;  state: Exp;  lines: +1 -1
Import 2
----------------------------
revision 1.1.1.1
date: 2003/12/31 14:08:46;  author: ovek;  state: Exp;  lines: +0 -0
Import 1
=============================================================================
$ cvs2svn --dump-only $CVSROOT/vendor-test
$ svnadmin create ~/cvs2svn-test-repo
$ svnadmin load ~/cvs2svn-test-repo < cvs2svn-dump
$ svn co file:///home/ovek/cvs2svn-test-repo/trunk trunk
$ cat trunk/a.txt
foo

If someone commits a change to a.txt after the imports, trying to preserve
history could really get fun, so you may need to specialcase vendor branches a bit.

I believe either cvs2svn needs to duplicate the imports to both the vendor
branch and the trunk, or the trunk revision of the file must be copied from the
last vendor branch revision (probably during cvs2svn's cleanup stage in the
above scenario). If anyone has committed to the trunk after imports (i.e.
revision 1.2 exist), then that first trunk commit should be considered relative
to the last vendor-branch revision with a time before the 1.2 revision, *not*
relative to 1.1, in order to preserve history somewhat properly. In fact, 1.1
should be considered a "dead" revision here, as 1.1.1.1 is the actual first
revision, and trunk should probably be considered a branch rooted in the vendor
branch, if this is to be handled somewhat cleanly.


---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@subversion.tigris.org
For additional commands, e-mail: issues-help@subversion.tigris.org

[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic