[development] FAQ: Why is Drupal still using CVS when X is a much better choice?
kkaefer at gmail.com
Thu Jul 31 22:55:07 UTC 2008
> Sure. The usual configuration is that SVN is provided by an Apache
> module (mod_dav and mod_dav_svn) usually over HTTPS so that
> passwords are not sniffable and mod_authz_svn provides access
> control. The documentation for this is http://svnbook.red-bean.com/nightly/en/svn.serverconfig.httpd.html
We could probably even make it authenticate against the users table
from drupal.org. I remember that there were issues in the past with
CVS passwords not matching... (I might be wrong about that though).
>> Yeah, this is a minor pain in the ass (my ass, to be precise, since I
>> don't think anyone else has ever fielded one of the cvs_rename
>> issues). But, I've been documenting the process in various issues
>> and hopefully others could pick up some of this (relatively small, in
>> the scheme of things) support load.
There are few requests because most people don't know that it's
possible to rename files in CVS via a hack. And even if they do know,
they are reluctant because it takes time and is not something they can
do immediately themselves.
> cvs tag -b DRUPAL-7--1
> we can say
> svn copy /contributions/HEAD/modules/foo /contributions/DRUPAL-7--1/
> It's SO much easier to explain this because this is what you have on
> your hard drive. The cvs tag/branch essentially means virtual
> directories meaning an abstraction layer which people need to
> comprehend. Here you have files directories and nothing virtual.
> (Let's not fight now the actual paths we can discuss how to lay out
> our repo).
The concept of tags as CVS implements it is indeed not easy to grasp,
especially if you use a GUI client. I remember that I had a hard time
tagging and branching things (documentation was not as good as it is
nowadays back then, admittedly). It's much easier if you see that you
have different directories with the same directory layout underneath
them. I agree that SVN's notion of tags is somewhat different from
CVS' approach (which is not necessarily bad, it's just more difficult
to understand, imho), but it's certainly not bad. Merging things
between branches or copying files from one branch to another or just
plain diffing of two branches/tags are more straightforward in SVN
because you *see* the directory layout on your hard disk instead of
imagining all the different "shadow versions" of the file in your head.
More information about the development