HG Push Failed;В доступе отказано .hg / store / lock - PullRequest
8 голосов
/ 16 ноября 2010

Я пытался настроить ртутный репозиторий на моем сервере, чтобы моя команда могла работать из их. Я использую Ubuntu Server 10.4, и я установил Mercurial с помощью apt-get. Теперь все прошло гладко.

Я запускаю директорию с hg просто отлично, я устанавливаю hgrc следующим образом:

[web]
push_ssl = False
allow_push = *

[trusted]
users = *
groups=

тогда я бегу hg serve. Сервер начинает слушать. Я могу клонировать этот репозиторий на другой компьютер, но когда я пытаюсь отправить изменения, я получаю сообщение об ошибке:

C:\Users\UserName\Project1>hg push http://MyInternalIP:8000
pushing to http://MyInternalIP:8000
searching for changes
abort: HTTP Error 500: Internal Server Error

На стороне сервера я получаю следующую ошибку:

LockUnavailable: [Errno 13] Permission denied: '/home/UserName/projects/Project1/.hg/store/lock'

Если у кого-нибудь есть решение, как это исправить, это было бы замечательно. Я нашел и нашел людей с похожими проблемами, и они говорят, что это может быть связано с тем, что у веб-пользователя нет прав, но я новичок во всем этом, и никто из них не дает решения о том, как решить проблему. Спасибо за ваше время.

Ответы [ 2 ]

10 голосов
/ 16 ноября 2010

Вы должны разрешить доступ на запись в каталоги репозитория пользователю, выполняющему процесс сервера Mercurial.Т.е. учетная запись пользователя под управлением hg serve должна иметь возможность записи в /home/UserName/projects/Project1/

Кстати, можете ли вы предоставить более подробную информацию о том, какую командную строку вы использовали для клонирования хранилища?

3 голосов
/ 10 марта 2015

В моем случае с ртутным хранилищем на redmine

Ошибка HTTP: 500 (разрешение отклонено)

Запуск

chown -R www-data /path/to/repos

на сервере, у меня это сработало.

( Фуэнте )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...