On Mon, 2 Dec 2002, Greg Stein wrote:
> I'll strongly second Daniel's points here. cvs2svn was built entirely with
> the idea of having the ,v files available for reading.
>
> On Mon, Dec 02, 2002 at 04:38:14PM -0500, Daniel Berlin wrote:
> > On Mon, 2 Dec 2002, Blair Zajac wrote:
> > > In looking at cvs2svn, it appears to only work on CVS repositories
> > > that you have a copy of.
> > >
> > > For projects that it's not easy to get hold of to CVS repository,
> > > it would be useful to have cvs2svn work on remote repositories
> > > (i.e. via :pserver:).
> > >
> > > How easy/hard would this be?
> >
> > Impossible.
> > Well, I guess it's not technically impossible, but it would be slower than
> > molasses and hard on the server.
>
> No, actually I believe it *is* technically impossible. IIRC, the "cvs log"
> output does not fully detail the revision graph when branches are present.
Yes it does.
At least, you can get it to do so.
Try cvs log -D "30 years ago <= today" on a file.
You can build the graph in reverse from this info, since the revisions
that are the base of a branch will look like:
----------------------------
revision 1.668
date: 2002/08/14 06:36:51; author: neil; state: Exp; lines: +27 -32
branches: 1.668.2; 1.668.4;
* toplev.c (parse_options_and_default_flags): Don't call
post_options here.
(general_init): Initialize GC, pools and tree hash here,
instead of lang_independent_init.
(lang_independent_init): Rename backend_init.
(do_compile): Call post_options hook; exit early if there
have been errors after switch processing.
(toplev_main): Update.
Unless i'm reading the source wrong, you will always see the log entries
for the revision that starts the branch before you see the log entries
*for* the branch, too.
> It isn't always possible to determine the predecessor revision in certain
> cases. And especially if somebody forces specific revision numbers -- you
> can't just say "1.(rev-1)" to figure out the predecessor.
No, but you can always figure out the successor explicitly if you wanted
to.
cvs log -r<revision>::, and it's the last thing it prints out.
I looked at the source to cvs between saying it was impossible, and not
technically impossible.
I'm pretty sure it isn't technically impossible, but I wouldn't want to
have to hold my breath waiting for it to finish.
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@subversion.tigris.org
For additional commands, e-mail: dev-help@subversion.tigris.org
Received on Wed Dec 4 07:52:06 2002