ここで正確な問題を公開してくれたランディに感謝します。
私は同じ問題に苦労し、それを解決するための別のアプローチを見つけました(パージして再インストールする必要はありません)。
hgadmin リポジトリを手動で初期化してフックをインストールすると、通常のインストールと同じ効果が得られます。ただし、「hg」ユーザーとして実行する必要があります。
手順
コマンドは私の環境で機能しました(Ubuntu 10.04.4 / Hg 1.4.3)
最初に/var/lib/mercurial-server/repos/hgadmin で Mercurialリポジトリを初期化します。
$ sudo su hg
$ cd ~/repos/hgadmin/
$ hg init
次に、通常初期化された hgadmin リポジトリ (比較のために VM にデプロイしたもの) で見つけた唯一の違いは、.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