Можно ли читать из репозитория Mercurial с помощью PHP

После безуспешной попытки настроить проводник репозитория mercurial на моем общем хостинге, я решил попробовать написать модуль для нашей интрасети, который будет действовать как проводник репозитория.

Могу ли я получить наборы изменений из репозитория Mercurial без установленного на компьютере Mercurial?

Спасибо за любую помощь!

Мегаполис


person Metropolis    schedule 25.03.2010    source источник


Ответы (1)


Определенно, но вам, вероятно, не нужно этого делать. В Mercurial есть режим http://mercurial.selenic.com/wiki/StaticHTTP, в котором он позволяет клонировать и извлекать данные из репозиториев. которые просто находятся на доступном веб-сервере. Медленнее, но работает.

Тем не менее, люди обнаружили, что при достаточной работе они могут получить все, кроме самых ограниченных систем общего хостинга, обслуживающих hgwebdir.cgi.

person Ry4an Brase    schedule 25.03.2010
comment
Отлично, большое спасибо за помощь Ry4an. Есть ли способ проверить, работает ли CGI на моем сервере? И если бы я все еще хотел создать свою собственную программу просмотра репозитория, как бы я мог читать из папок? Вы сказали мне в одном из моих постов, что я не должен обслуживать папки .hg непосредственно в папке CR, но вы так и не сказали мне, почему. - person Metropolis; 25.03.2010
comment
Чтобы проверить, можете ли вы запускать CGI, я думаю, попробуйте поместить крошечный файл .cgi на место, поместить строку ScriptAlias ​​в файл .htaccess и проверить. Ваш хостинг-провайдер должен иметь возможность сказать. Чтобы не показаться ехидным, но ртутный двоичный формат сложен и точен. Создание для него браузера без Mercurial на этом сервере - это огромные усилия, которые почти наверняка не увенчаются успехом. Помещение каталога .hg в ваш DocumentRoot не небезопасно, просто он включает только режим static-http: //, который медленнее и менее эффективен. Запустите CGI и оставьте .hg без доступа к static-http: // - person Ry4an Brase; 25.03.2010
comment
В этом посте stackoverflow.com/questions/2484151/ Я показал файл Python CGI, который я пытался добавить только с заголовком, но он не работал. Я также пробовал ScriptAlias, и это давало мне ошибку. Означает ли это, что я не могу запускать файлы CGI на этом сервере? Или мне нужно что-то другое сделать? - person Metropolis; 25.03.2010
comment
Это могло меня. Или этот питон находится в другом месте. Или этот питон не установлен. или что может существовать любая из миллиона других проблем конфигурации веб-сервера. Просто спросите вашего хоста, разрешают ли они CGI и как их включить. - person Ry4an Brase; 25.03.2010