Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 06 Jan 2001 18:47:16 -0800
From:      Peter Wemm <peter@netplex.com.au>
To:        John Wilson <john_wilson100@excite.com>
Cc:        freebsd-hackers@FreeBSD.ORG
Subject:   Re: Converting Perforce to CVS 
Message-ID:  <200101070247.f072lG400803@mobile.wemm.org>
In-Reply-To: <5546455.978822381106.JavaMail.imail@pugsly.excite.com> 

next in thread | previous in thread | raw e-mail | index | archive | help
John Wilson wrote:
> I apologize in advance, as this is not strictly a FreeBSD-related question,
> but I know that a lot of FreeBSD'ers use CVS as well as Perforce, so here
> goes...
> 
> What is the easiest way to convert a P4 source repository to CVS, while
> preserving revisions, history, log messages, etc?   Both systems seem to use
> RCS, but is it as simple as copying the files?   Are there any caveats?   
> 
> Thanks,
> 
> John

perforce only uses the rcs files to store discrete file revisions, the rest
of the metadata is in the db.* files (log messages, branches, views, etc).

Generally, the "most correct" way to do a conversion is to generate a list
of changes and run through them one at a time - checking them out of one
repo and into the other, and then tweak the metadata (timestamp, author).

Going from cvs to perforce is pretty hard as cvs does not maintain enough
information to make a faithful conversion without some guesses and heuristics.

Going the other way should be pretty simple as you have a list of discrete
changes starting at change 1, then 2, etc.  Check them out one at a time
and check the changes into cvs.  It will take a while but it will work if
you get your scripting right.  No, I dont know of anybody who has actually
wanted to go this way before, so I am not aware of any pre-canned p4->cvs
scripts.

Cheers,
-Peter
--
Peter Wemm - peter@FreeBSD.org; peter@yahoo-inc.com; peter@netplex.com.au
"All of this is for nothing if we don't go to the stars" - JMS/B5



To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-hackers" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200101070247.f072lG400803>