SIDEBAR
»
S
I
D
E
B
A
R
«
Make Mine Mercurial
February 9th, 2008 by jens

Distributed version-control systems have fascinated me for while. Unlike CVS and Subversion and the like, they don’t rely on a central server; instead, any user of the software can host a copy of the repository, and change-sets are pushed between repositories in a peer-to-peer fashion. These are a lot more powerful and flexible—the centralized CVS model is merely one special case of the configurations that a distributed system can use. And the issues of trust, synchronization and branching that they deal with are very similar to those that appear in peer-to-peer networks.

I’ve tried out several of these, including Monotone and Bazaar, but lately I’ve settled on Mercurial. I find it the simplest to understand and use, and being written in Python it’s extremely portable.

Mercurial’s having a contest to design a new logo. I hadn’t been paying attention, but today I was reminded of Mercury’s symbolic connection to alchemy and the occult, and decided to design something incorporating John Dee’s Monas Hieroglyphica, a symbol he designed based on the astrological symbol for Mercury. (I’m not an expert on Dee or on the occult, but I am a fan of John Crowley, who used both John Dee and his symbol in his _Ægypt_ series of novels.)

The logos

Fine print

  • PDF, EPS, and higher-resolution PNG renderings are available here
  • The type is set in Yanone Kaffeesatz, a Creative-Commons licensed font.
  • I vectorized the glyph from a bitmap drawing that appears on Wikipedia, placed in the public domain by the artist.

8 Responses  
  • Peer Sommerlund writes:
    February 10th, 200812:36 AMat

    Hi Jens. Nice logo.

    I found a .vdesigner file next to your PDF, and assume you have been using http://www.tweakersoft.com/vectordesigner/

    Is it possible to export it to .svg format? I’m using Inkscape would like to play around with your logo.

    Regards,
    Peer

  • Jens Ayton writes:
    February 10th, 20088:30 AMat

    Thief! Thief! ;-)

    Kidding aside, I like the square and inline versions. The background of the icon version looks a bit plasticy… although it’d make a great guitar pick.

  • Jim writes:
    February 10th, 200810:10 AMat

    Have you also tried git? Any interesting in a quick writeup of the strength/weaknesses/other that made you go with Hg over the other choices?

  • Jens Alfke writes:
    February 10th, 20082:28 PMat

    @Peer — Sorry, it looks like VectorDesigner can only export in PDF and EPS format.

    @Jim — No, I haven’t tried git. By the time I ran across it, I was already burning out on learning yet another VCS, and from the summaries I’ve read it doesn’t seem to offer anything amazing over Mercurial. It has the drawback of being written in procedural C, which would keep me from wanting to work with the source code, and which means it’s likely to have more cross-platform compatibility issues. Also, Linus has made some really obnoxious replies to people who’ve criticized any aspect of git (including the fact that it’s written in C) leading me to not want to associate with it.
    My friend Evan has written a good overviewof git that you might find helpful.

  • Jim writes:
    February 10th, 20083:16 PMat

    Thanks. Otherwise you are finding Hg suitable for your work?

    I’ve never used a distributed system. Currently at work I use a mixture of p4 and svn. The centralized nature of things can be a PITA when for some reason I do not have connectivity to the server, or simply want to take some in progress changes from my desktop machine and continue working on them on my laptop without first pushing the incomplete changes into the server first.

  • Jens Alfke writes:
    February 11th, 20088:50 AMat

    Jim— Yes, hg works great for me. It’s very straightforward to use, since every working tree automatically contains its own repository. The main conceptual hurdle is the difference between “commit” (save file changes into the working tree’s repository) and “push” / “pull” (sync the working tree’s repository with another repo.)

    I just use “hg init” when I start a project, which makes the folder a repo. Then I can checkpoint whenever I feel like it. If I need to work on another machine I use hg with “ssh:” URLs to push a clone over there, and then push/pull revisions back and forth. And of course I make a clone on my web host to serve as a master/stable tree and offsite backup.

    You can actually use hg with a project that’s already under SVN, if you’re careful. The two VCSs ignore each others’ metadata. (I think there’s a page on the hg wiki about how to manage this.)

  • Joshua Barr writes:
    March 17th, 20088:15 PMat

    Hey Jens,
    I was actually just thinking recently that as much as I approve of Mercurial its logo… left something to be desired. So I thought I might contribute a new one, and popped on over to their site to see the old not-hotness one last time before starting, only to see a new, much more attractive logo.
    Both yours and the currently used logo are much more attractive than the old one, but Googling for a Mercurial logo design contest has only brought me here so I’m curious: What were the other contenders? *Were* there any others?

  • Jens Alfke writes:
    March 18th, 20087:33 AMat

    Joshua — Most of them were posted on the wiki, although some only showed up on the mailing list.


»  Substance:WordPress   »  Style:Ahren Ahimsa