gitsosis, redmine, пассажир: ошибка «не репозиторий git»

Я установил gitosis и redmine и запускаю их через apache/passenger на CentOS. Проблема в том, что я не могу получить доступ к репозиториям через Redmine. Ошибка: «Запись или ревизия не найдены в репозитории.

Мой репозиторий хранится в

/home/zenna/репозитории/myproject.git

Ошибка (найденная в логах апача) "fatal: Not a git repository: '/home/zenna/repositories/myproject.git'"

Это явно репозиторий, так как все отлично работает с сервером WeBrick. Я думаю, что это, вероятно, проблема с разрешениями apache/passenger.

Поэтому я попытался открыть папку myproject.git с помощью apache:apache. Это не сработало. Я подумал, что, возможно, родители каталога также должны быть доступны пользователю apache, поэтому я попытался создать символическую ссылку в /myproject.git на /home/zenna/repositories/myproject.git. Это тоже не сработало

Кто-то на форуме предложил:

Вы запускаете скрипт/сервер с пользователем, у которого есть общедоступный сертификат в репозиториях gitosis, но у пользователя apache/passenger его нет. Простое решение… создайте сертификат для пользователя-пассажира. Добавьте его на сервер gitosis и назначьте разрешения в gitosis.conf. Я дал своему пользователю apache права на чтение всего каталога и всех файлов/папок внутри.

Однако я запускаю пользователя apache с sudo /usr/sbin/apachectl start

Означает ли это, что мне придется создать открытый ключ для root и добавить root в мой gitosis.conf? Какой фактический пользователь пытается получить доступ к репозиторию через redmine, root? апач? пассажир?

Спасибо


person zenna    schedule 29.07.2010    source источник


Ответы (3)


Попробуйте /home/zenna/repositories/myproject.git/.git Также убедитесь, что он доступен для чтения пользователю Apache.

person MarkD    schedule 31.07.2010

Если myproject.git является голым репозиторием и находится на том же сервере, что и redmine, укажите полный путь к файлу myproject.git.

Поэтому вместо gituser@domain:myproject.git используйте /home/gituser/repositories/myproject.git

person Shoan    schedule 09.08.2010

При использовании пассажира фактическим пользователем является nobody, поэтому необходимо убедиться, что каталог (включая все его родительские каталоги) доступен для чтения пользователю nobody.

person zenna    schedule 17.08.2010
comment
Пользователь может быть отличен от никого. Если включена поддержка переключения пользователей, Phusion Passenger по умолчанию запускает веб-приложение в качестве основной группы владельца файла config/environment.rb modrails.com/documentation/ - person gdelfino; 02.12.2010