[Tfug] has anyone set up a cvs repository on a windows server?

Ammon Lauritzen ammon at simud.org
Thu Dec 7 11:00:27 MST 2006


Joe Blais wrote:
> On the server, does it need to look like a web service or does it just look
> like a windows share that you can mount as a folder and then access
> directly?

If configured to run through Apache, you can mount an SVN repository via
WebDAV, yes. I have never done this myself (the dav thing), but plenty
of docs out there explain how to do it.

In general practice, however, you want to run SVN as a standalone server
(using its own protocol in stead of http). You then make sure all of
your users simply check out recent copies.

TortoiseSVN (tortoisesvn.tigris.org) is a phenomenal SVN client for
windows. Integrates directly into windows explorer. Is amazing. I wish
there was something even 1/10 as good for unix. I've occasionally even
samba mounted directories just to get tortoise's interface when
performing big manipulation on a repo ;)

> Does it handle multiple projects sharing the same file?  It looks like when
> you commit something, everything in the project gets the same version.  If
> so it seems like a file that is shared by multiple projects would be a messy
> thing, because other projects may not have had a commit at the same
> time -whatever I'm trying to say... it seems different to what I'm used to.

SVN supports the notion of 'external' directories. These are files that
are part of another repository but are imported into the local directory
structure when checking it out.

As far as version numbers in SVN vs CVS, SVN doesn't associate revision
numbers with individual files. It associates changes to individual files
with revision numbers.

Example:

I have a brand new, empty project (revision zero). I import three files
 A, B, and C. The revision number on the project is now 1.

Somebody else and I both check out and start working on the project. He
commits a change to B, increasing the project's revision number to 2. I
commit a change to A, increasing the revision number to 3.

We both update our local copies. My client downloads the new version of
B and his downloads the new version of A.

All this time, C hasn't changed. If you look at the svn log for C, it'll
show you that it was added in rev 1, but hasn't been touched since then.

Ammon




More information about the tfug mailing list