On Tue, Apr 12, 2005 at 12:53:36PM -0500, Sreekumar Kodakara wrote:
> I am new to CVS and recently I had all my code setup in a CVS in a
> machine. The nice thing about this machine is that it is backedup
> everyday but the problem is that at times it goes down for a day or
> so (I have no control on this) and this creates a problem for me.

The recommendation for replication via rsync is really the only viable
way of synchronizing two CVS trees.  If you want to stick with CVS,
use that advice.

The "central server" model of development, that many Source Control
Management (SCM) systems use, suffers from the problem of lost remote
services.  There is an additional problem that I have: recommending a
FOSS alternative to someone new to revision control.  There are a few
SCM (Source Control Management) that operate on a fully distributed
model: GNU Arch (my favorite), Bazaar (based on GNU Arch), monotone,
and of course the venerable SVN (distributed subversion).

I prefer to use GNU Arch, but it has a bit of a learning curve.  The
tutorials are nice and after a while, you get used to the development
model and environment that Arch puts you in.  Bazaar is an attempt at
making GNU Arch more user-friendly and is developed in concert with
GNU Arch (they use the same email list).  Arch and Bazaar both
distribute their archives over known transport protocols, such as
HTTP, SFTP, and FTP.  In this, they are very flexible and portable.

Bazaar-NG is an attempt at writing an SCM in Python, borrowing ideas
from Arch and Bazaar but being even more "user friendly".  It's mostly
vaporware right now, but the developer is working full-time on the
project.

monotone has been getting some press lately, and it looks like a nice
little system.  Most of the commands are CVS-like, and it can be
self-hosting.  In other words, if you want it to act like a "central
server" model of development, you can do so by running it in "server
mode".  This is both a boon and a bane.  I mainly see it as a bane
because of the special rules you'll have to set up to allow
connections through firewalls or NAT boxes.  However, you'd be
presented with these same problems regardless of the network
transport.

I don't know anything about SVN, so I won't comment on it.  Apparently
it's a distributed version of subversion, which was designed to be
very CVS like in commands.

Anyway, good luck.

-- 
Chad Walstrom <chewie at wookimus.net>           http://www.wookimus.net/
           assert(expired(knowledge)); /* core dump */
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: Digital signature
Url : http://shadowknight.real-time.com/pipermail/tclug-list/attachments/20050412/9fb0de16/attachment.pgp