Я пытаюсь оценить git для нашей команды, и одно из требований - использовать HTTPS в качестве метода транспорта. Я пытался следовать документации git-http-backend , а также некоторым редким блогам по настройке этого с использованием нового транспорта Smart HTTP, но я просто не получаю его работу. Я знаю, что это, вероятно, что-то глупое, но я ломал голову над этим безрезультатно. Не думайте, что у вас есть реальные знания в git, я довольно новичок в этом инструменте.
Прямо сейчас я могу клонировать по HTTP просто отлично, но когда я пытаюсь нажать, клиент получает:
$ git push
Username:
Password:
Counting objects: 4, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 291 bytes, done.
Total 3 (delta 0), reused 0 (delta 0)
error: unpack failed: unpack-objects abnormal exit
Журнал ошибок сервера Apache гласит:
ошибка: недостаточно разрешений для добавления объекта в базу данных хранилища ./objects
неустранимый: не удалось записать объект
Конфигурация Apache:
SetEnv GIT_PROJECT_ROOT /opt/git
SetEnv GIT_HTTP_EXPORT_ALL
ScriptAlias /git/ /usr/libexec/git-core/git-http-backend/
<Location /git>
AuthType Basic
AuthName "Private Git Access"
Require valid-user
AuthUserFile /opt/git/passwords
</Location>
Очевидно, моей первой мыслью были права доступа к файлам, поэтому я быстро набрал chown -R apache: / opt / git
# ls -l /opt/git
drwxr-xr-x. 7 apache apache 4096 Aug 12 11:06 project.git
Но я все еще получаю ту же ошибку.
Спасибо, я очень ценю любую помощь, которую я могу получить в этом.