Большое спасибо Рэнди за разоблачение точной проблемы здесь.
Я боролся с той же проблемой и нашел альтернативный подход к ее решению (без необходимости очистки и повторной установки).
Вы можете инициализировать репозиторий hgadmin вручную и установить хуки, достигая того же эффекта, что и при обычной установке. Вы должны сделать это как пользователь 'hg'.
Процедура
Команды работали для моей среды (Ubuntu 10.04.4 / Hg 1.4.3)
Сначала инициализируйте ртутный репозиторий в / var / lib / mercurial-server / repos / hgadmin :
$ sudo su hg
$ cd ~/repos/hgadmin/
$ hg init
Тогда единственное отличие, которое я обнаружил в нормально инициализированном репозитории hgadmin (которое я развернул на виртуальной машине для сравнения), - это хуки в файле .hg / hgrc . Итак, откройте файл:
$ vim .hg/hgrc
и вставьте это точное содержание:
# WARNING: when these hooks run they will entirely destroy and rewrite
# ~/.ssh/authorized_keys
[extensions]
hgext.purge =
[hooks]
changegroup.aaaab_update = hg update -C default > /dev/null
changegroup.aaaac_purge = hg purge --all > /dev/null
changegroup.refreshauth = python:mercurialserver.refreshauth.hook