Инструменты пользователя

Инструменты сайта


soft:git:dostup_k_git-repozitorijam_cherez_http_s_pomoschju_nginx

Доступ к git-репозиториям через http с помощью nginx

Для осуществления задуманного используем модуль dav от nginx:

...
        location ^~ /git/ {
                alias                   /srv/gitosis/repositories/;
                access_log              /var/log/nginx/git.access.log combined;
                error_log               /var/log/nginx/git.error.log;
                client_body_temp_path   /tmp/nginx/git;
                create_full_put_path    on;
                dav_access              user:rw group:r all:r;
                dav_methods             PUT DELETE MKCOL COPY MOVE; #PROPFIND
        }
...

Если необходимо предоставить доступ только для чтения, соответственно, убираем из dav_methods всё, что связано с записью, оставив только:

dav_methods             COPY; #PROPFIND

Также можно добавить basic-авторизацию для управления доступом пользователей.

Для каждого экпортируемого репозитория необходимо добавить в крипт post-update (и выполнить вручную перед первым http-клонированием):

git-update-server-info

Иначе будет выдаваться сообщение об ошибке:

Initialized empty Git repository in ./test/.git/
fatal: http://host.domain.tdl/git/test.git/info/refs not found: did you run git update-server-info on the server?

Информация

Дискуссия

Enter your comment
 
soft/git/dostup_k_git-repozitorijam_cherez_http_s_pomoschju_nginx.txt · Последние изменения: 14.01.2010 09:49 (внешнее изменение)

Инструменты страницы