CVS - A cool topic...

Kurt Granroth plug-discuss@lists.PLUG.phoenix.az.us
Wed, 25 Jul 2001 10:38:22 -0700


On Wednesday 25 July 2001 10:13 am, Kevin Buettner wrote:
> BTW, I agree that CVS would be a great topic.  I would like to
> attend a somewhat advanced session that covers things like:
>
>     1) What is CVSup and what is it good for?

It's a way to provide very efficient read-only access to a CVS repository.  
The KDE Project has a number of CVSup mirrors and they are very fast... but 
since no distros ship with the cvsup client binaries, most people are now 
using anonymous CVS.

>     2) Using rsync to mirror a repository.  (The idea here being that
>        a read-only mirror be placed on a local machine.  Commits would
>        still be done with respect to the master repository.)

Very simple.  Have a rsync server running on the master repo and just update 
on the mirrors.  The only glitch is the 'passwd' file (if you are using 
pserver).  In order to prevent users from committing to a mirror, you need to 
exclude passwd from the rsync update and have a static passwd on each mirror 
with only the anonymous user.

>     3) How to automatically commit the same patch to multiple
>        repositories (or branches).  (This is something that I
>        presently do manually, but I'd love to hear about a way
>        to automate it.)

Dunno.  I'd probably just hack up a shell script to automate this if I ever 
needed to.

>     4) How do you diff between two different dates on a branch?
>        (Actually, I don't think this used to be possible, but it
>        might be now...)

cvs diff -D "First Date" -D "Second Date" file

>     5) How do you rename files and directories AND preserve the
>        history, tags, etc. associated with the original files?
>        (I know of a way to do it, but it isn't pretty.)

Log on to the server and change the directories and ,v files there.  Not 
pretty, but we've done it quite a few times and haven't had any problems.
-- 
Kurt Granroth            | http://www.granroth.org
KDE Developer/Evangelist | SuSE Labs Open Source Developer
granroth@kde.org         | granroth@suse.com
            KDE -- Conquer Your Desktop