[Python-Dev] Moving the ctypes repository to python.org

Thomas Heller theller at python.net
Fri Jun 23 17:42:22 CEST 2006


>> I think the best would be to import it into an url like
>> 
>> http://svn.python.org/projects/sandbox/trunk/ctypes/
>> 
>> Is it possible to take the CVS repository files (they can be accessed 
>> with rsync), and import that, preserving the whole history, into SVN?
> 

Gustavo Niemeyer schrieb:

> It should be possible to use cvs2svn itself, creating a dump file,
> and loading that dump file into an existing repository with
> 'svnadmin load --parent-dir'.
> 

Yes, that is what I'm experimenting with currently.

One problem that occurs is the following.  It seems that cvs2svn
does not handle a branch correctly...

Here is a partial output of 'cvs log _ctypes.c' running
on the SF CVS repository:


RCS file: /cvsroot/ctypes/ctypes/source/_ctypes.c,v
Working file: _ctypes.c
head: 1.340
branch:
locks: strict
access list:
symbolic names:
	...
	branch_1_0: 1.226.0.2
	...
keyword substitution: kv
total revisions: 431;	selected revisions: 431
...
----------------------------
revision 1.307
date: 2006/03/03 20:17:15;  author: theller;  state: Exp;  lines: +1373 -815
Moving files from branch_1_0 to HEAD.
----------------------------
revision 1.306
date: 2006/03/03 19:47:24;  author: theller;  state: dead;  lines: +0 -0
Remove all files, will add them from 'branch_1_0' again.
----------------------------
revision 1.305
date: 2005/05/11 19:17:15;  author: theller;  state: Exp;  lines: +7 -1
oops - patch was incomplete.
----------------------------
revision 1.304
date: 2005/05/11 19:11:35;  author: theller;  state: Exp;  lines: +24 -5
Don't call __init__, only __new__, when an ctypes object is retrieved
from a base object.
...

What I did was at a certain time develop in the 'branch_1_0' branch, leaving
HEAD for experimental work.  Later I decided that this was wrong, cvs removed all
files in HEAD, and added them back from a branch_1_0 checkout.  Maybe doing
this was another bad idea, as the trunk in the converted SVN repository
only lists _ctypes.c revisions corresponding to the CVS version numbers
1.307 up to the current CVS head 1.340.  All the older versions from 1.1 up to
1.226.2.55 show up in the branch_1_0 branch that cvs2svn has created - although
in CVS only the versions 1.226.0.2 up to 1.226.2.55 were ever in the branch_1_0
branch.  Is that a bug in cvs2svnn?

Oh well, maybe I deserve that - but 'cvs log' shows much more info the
'svn log' now (when running in the trunk checkout).

Thomas



More information about the Python-Dev mailing list