[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: Whatstrings

From: Paul Koning <Paul_Koning_at_Dell.com>
Date: Sat, 6 Sep 2008 17:36:54 -0400

> -----Original Message-----
> From: jam [mailto:jam_at_tigger.ws]
> Sent: Saturday, September 06, 2008 1:34 AM
> To: users_at_subversion.tigris.org
> Subject: Whatstrings
>
> Hi
>
> I had a bad experience trying to use subversion after cvs, so I'm
> trying
> again :-)
>
> Somewhere in the world is an executable someprog.
> I need to exactly re-create the environment from which it came ie
> ident someprog
> someprog:
>
> $Header: /home/cvs/ltouch/parse.c,v 2.9 2008/03/23 09:44:39 jam Exp $
> $Header: /home/cvs/ltouch/tkAppInit.c,v 2.11 2008/03/23 09:44:39 jam
> Exp
> $
> $Header: /home/cvs/ltouch/do.c,v 2.16 2008/03/23 09:44:39 jam Exp $
> $Header: /home/cvs/ltouch/term.c,v 2.5 2008/03/09 05:09:35 jam Exp $
>
> Now I can *exactly* recreate this version of someprog, it's ROM or
> flash
> whatever.
>
> Is subversion the wrong tool for what I need to do?

No. Subversion is a vastly superior tool compared to CVS.

I assume what you're looking for is "give me the exact set of sources
that were used to produce this particular release of this particular
application".

With CVS, you have to know, separately, the rev of each file. That's
because CVS doesn't *have* a repository (it only pretends) -- instead,
it just separately keeps versions of files.

By contrast, Subversion *does* have a repository, and when you make
changes, those changes are stored atomically and can be retrieved
trivially.

For example, suppose you know that V3.1415 of someprog.exe was built
from svn rev number 31415 (and, say, from "trunk"). That's all you
need. That rev uniquely defines an exact point in time of the history
of the entire set of files.

In the example you gave, with CVS I'd have to do a checkout for a
timestamp somewhere around 9:44 on 2008/03/23, except that this may give
me the wrong mix of files because checkins aren't atomic and are
actually spread out over some stretch of time (quite possibly several
minutes). With Subversion, I'd just say "checkout rev 31415" and I will
definitely have exactly what I need.

This is one of the main reasons why we dumped CVS and went to
Subversion. And I will never use CVS again in any setting where I have
any say in the matter.

        paul

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-09-06 23:37:36 CEST

This is an archived mail posted to the Subversion Users mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.