-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Matthew Woehlke wrote:
> Micah Cowan wrote:
>> Since I do virtually all my work on a laptop, which is usually but not
>> always connected to the Wired, I have begun experimenting with
>> distributed SCMs. I have recently been using Mercurial for work on Wget,
>> and then synching the work with Subversion, and am very happy with it so
>> far. I would like to consider moving Wget development from Subversion to
>> Mercurial at some point in the future, if it continues to work well.
> 
> Have you already considered and rejected git? I'm not trying to start a
> VCS war, it's just that I've seen some other GNU projects (notably
> coreutils and gnulib) moving to git and want to know you didn't pick hg
> just because it's the first DVCS you liked.

I meant to say this: alternative suggestions for DVCS are still welcome.
And yes, hg is in fact the first DVCS I liked. :)

I considered git first, actually, but concluded that it's not
appropriate, because from what I've seen it just really isn't
multiplatform at all. From what I've seen, it looks absolutely
terrific... if you're a Unix user. Bollocks to you if you're not. :)

Git also has a reputation for being more difficult to use. Linus says
this is no longer so, but I'm not sure I'd trust his opinion on that...
:) It is also rather short on documentation.

Bazaar was also a candidate, especially since I am an Ubuntu user and
(small) contributor (which has not yet actually involved my using
Bazar), and while it appears to be extremely easy-to-use, it looks to
suffer severe performance drawbacks in comparison to git or Mercurial,
and since Mercurial seems to be quite efficient, while being (AFAICT)
just as easy-to-use as Bazaar, Mercurial seemed a better choice.

I did do some research, which did not actually involve trying any other
DVCSses, though I have used git to prepare a small kernel patch, but
mainly consisted checking out Rick Moen's summary[1] of a huge variety
of SCMs, and reading up on the decision-making progress that Mozilla[2]
and went through to choose which SCM to switch to (they chose Mercurial).

This is still an _evaluation_ period, and I don't want to rush too
quickly towards just jumping to it. But if there doesn't seem to be a
strong reason to use something else, and we use it for a while, and
there don't seem to be any very serious complaints, then we'd probably
move in that direction.

Mercurial is a relatively young (but quickly popularized) project. It
seems to do everything we would need, but is likely to have some
shortcomings. I note, for instance, that support for symbolic links is a
very recent, and somewhat immature, addition. I also understand that it
operates under the assumption that files in the repository can be held
entirely in memory. Also, it cannot track directories, only "paths",
which makes me wonder about how tracking permissions of directories
would work (probably doesn't).

All of these things look to me like (fairly minor) shortcomings for
Mercurial as an SCM; but I don't think they're likely to affect our
particular project significantly.

1. http://linuxmafia.com/faq/Apps/scm.html
2.
http://weblogs.mozillazine.org/preed/2007/04/version_control_system_shootou_1.html

- --
Micah J. Cowan
Programmer, musician, typesetting enthusiast, gamer...
http://micah.cowan.name/

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFG8bUb7M8hyUobTrERCCggAJ9M+V2OkvxzCoQWPpqtjf0O72g2AgCdEJob
OWKIRmJlcyonJzi51h9UmHo=
=3H4Z
-----END PGP SIGNATURE-----

Reply via email to