Posts tagged: VCS

A Mercurial mirror of Django's Subversion repository

Update: As of 2012, the primary Django repo is on GitHub. The mirror described in this post has been retired.

Just wanted to post a quick note that I’m now publishing an experimental Mercurial mirror of the Django source code repository, including all tags and branches and even the djangoproject.com website source itself. Tom Tobin at The Onion has been maintaining a similar mirror of Django trunk for a while (and very helpfully answered some of my questions in IRC), but I wanted to do the whole tree.

Mercurial: good enough for now

Lately I’ve been trying out the Mercurial distributed version control system on some real projects.

I currently use Subversion for production stuff at work. It’s reliable, has great Trac integration, and is most likely to be known by other developers. (In fact, we hired a new person at work this fall who will be helping me with web development, and it turned out that Subversion was what he was familiar with. So I feel vindicated on that last point especially.)

darcs on pair.com

Shared hosting is starting to feel pretty quaint in the face of cheap and easy virtualization, but I still have some clients who use it. While doing some maintenance work today on one client’s Pair.com account, I started to twitch when I realized I was about to make some changes without using version control. I checked for Bazaar, Mercurial, and darcs command-line binaries; only darcs was installed, luckily a fairly recent version (1.0.8). Problem solved.

In-place import using Subversion

Thanks to the helpful folks on the #svn IRC channel I learned that it is possible to turn a directory into a svn checkout in-place, i.e. without having to replace the directory itself with a fresh checkout after you svn import. This is very handy for things like /etc files and other stuff that you’d rather not be shuffling around unnecessarily.

The key nugget of info is here in the svn FAQ.

Managing a Django project using darcs

Preamble

This article is two things:

  1. A description of one way to use version control with a Django project
  2. An introduction to using the darcs distributed version control system in particular

First, though, a mini-sermon which someday will be a post in the You Really Should series: You really should use version control. Most of you probably do. But if you’re among those not using version control to manage your software projects, start now! Learn a good version control system and start using it on just one project. You’ll work so much more productively and confidently that you’ll want to use version control everywhere. If you’re just getting started, learn Subversion – it is more or less the standard at this point, and employers and other programmers will assume you know it.