Назад | Перейти на главную страницу

Обслуживание mercurial в ubuntu 10.10

Я прочитал огромное количество статей, но, похоже, чем больше стараюсь, тем больше отвлекаюсь.

Я пытаюсь обслуживать постоянные репозитории через HTTP. Использую вместе с Redmine.

Я установил mercurial-server. Я создал репо, к которому не могу подключиться извне. Когда я пытаюсь перейти по этому адресу, я вижу index.html, который я помещаю в каталог, но когда я использую TortoiseHg и просматриваю тот же адрес, я получаю 404. Должен ли я указывать на конкретный файл? Я только пытался указать на каталог вот так "http://www.example.com/hg/repo/".

Прямо сейчас я только пытаюсь вытащить репо, но я хотел бы иметь возможность временно протолкнуть HTTP, если это возможно.

Как настроить push-доступ пользователя (через HTTPS) к репо? Должны ли пользователи существовать на Linux-машине? Вот где статьи и учебные пособия сбивают меня с толку, так как некоторые упоминают «непостоянных пользователей», а другие создают собственных пользователей на машине, обслуживающей репо. Я бы хотел использовать самый простой сценарий.

Пожалуйста, будьте как можно подробнее .. Я буду очень признателен за любую помощь по этому вопросу!

в следующем рабочем примере вам потребуется действительная аутентификация для извлечения (см. Требование действительного пользователя) и действительная аутентификация с пользователем из частной группы для извлечения (установка директивы Limit).

<Directory /var/www/sources.XXXXXXXXx/www/private/>
RewriteEngine on
        RewriteBase /private
        RewriteRule ^$ hgwebdiri.cgi  [L]
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule (.*) hgwebdir.cgi/$1  [QSA,L]
        Options FollowSymLinks +ExecCGI
        AddHandler cgi-script .cgi
        DirectoryIndex hgwebdir.cgi
        AllowOverride None
#       Order allow,deny
#       Allow from all
        AuthUserFile /etc/mercurial/hgweb.htpasswd
        AuthGroupFile /etc/mercurial/hgweb.htgroup
        AuthName "XXXXXXXXXXXXXx private sources"
        AuthType Basic
        Require valid-user
    <Limit POST PUT>
                Require group private
        </Limit>
</Directory>

Не забудьте указать allow_push либо в глобальном файле hgrc, либо в файле hgrc размещенного репо.