Корень документа Gitweb с гитолитом

Я на Mac OsX, пытаюсь разместить свой собственный сервер git. У меня гитолит работает отлично.

Тем не менее, у меня есть папка под названиемgit" в моем Sites каталог, так что посещение http://git.example.com/ указывает на этот каталог.

Как я могу получить корень документа Gitweb, чтобы он указывал на мой gitolite "repositoriesпапка в /Users/me/repositories/?

2 ответа

Вам нужно добавить gitweb.conf.pl файл (как этот), который:

  • будет вызываться gitweb (если этот файл существует и определяет export_auth_hook к югу, gitweb.cgi называет это)
  • укажет где находятся репозитории git
  • назову гитолит

Это будет включать в себя:

$ENV{GL_REPO_BASE_ABS} = "$ENV{HOME}/repositories";
$export_auth_hook = sub {
    my $repo = shift;
    my $user = $ENV{GL_USER};
    # gitweb passes us the full repo path; so we strip the beginning
    # and the end, to get the repo name as it is specified in gitolite conf
    return unless $repo =~ s/^\Q$projectroot\E\/?(.+)\.git$/$1/;

    # check for (at least) "R" permission
    my $ret = &access( $repo, $user, 'R', 'any' );
    my $res = $ret !~ /DENIED/;
    return ($ret !~ /DENIED/);
};

С access() быть функциейgitolite/src/lib/Gitolite/Conf/Load.pm,

Ваш httpd.conf затем позвонил бы gitweb.cgi Сценарий, как в этом.

Так как мне не хватало моего project.list, я создал его сам. Затем я выполнил весь каталог репозиториев с помощью chmod -r 755. Работает в настоящее время!

Другие вопросы по тегам