Обновил Mercurial на сервере и дома.
Лол, во FreeBSD из /contrib не устанавливается hgwebdir.fcgi (почему?). Поправил Makefile в портах, получил желанное. А то поначалу ещё и куда-то делись все шаблоны.
Ещё пришлось прописать в hgweb.config в секцию [web] строчку
baseurl = /hg
Раньше без неё работало! :-P
Грепал Грека грепом репо,
Видит Грека — в репо баг,
Сунул Грека в репо руку —
Баг за руку Греку цап!
Mercurial — распределённая система контроля версий, написанная на Python. Работает очень шустро (быстрее, похоже, только git), имеет всё что нужно и проста в работе. В Emacs для работы с Mercurial можно использовать VC, там есть нужный backend.
Решил тут поставить Mercurial на сервер, прицепить веб-интерфейс к нему и сделать так, чтобы можно было отправлять коммиты прямо на сервак через SSH и HTTPS (удобно и надёжно).
Опишу весь процесс.
При установке использовалось следующее ПО (с другими версиями что-то может измениться):
FreeBSD 6.2-STABLE в качестве OS на сервере
Веб-сервер lighttpd 1.4.15 (на версиях ниже 1.4.12 скорее всего будут проблемы с SSL; 1.4.x вообще не сахар по сравнению с грядущей 1.5.x, далее по тексту будет хак, связанный с недостатками ветки 1.4.x)
Mercurial 0.9.4 (вышла на днях)