Гитоз после обновления не запустится - PullRequest
2 голосов
/ 14 апреля 2010

Я использую Cygwin на ПК с Windows Vista. Я успешно установил sshd, настроил и создал gitosis. Я могу удаленно выполнить клон gitosis-admin.git репозитория, внести изменения в конфигурацию, зафиксировать и успешно отправить обратно на машину cygwin.

Однако после обновления не выполняется, и новый репозиторий (как указано в конфигурации) не был создан.

Я пробежал:

chmod 755 /home/git/repositories/gitosis-admin.git/hooks/post-update

и ls -l показывает следующее:

-rwxr-xr-x 1 git None   69 2010-04-13 22:55 post-update

еще, когда я бегу:

./post-update

Я получаю следующую ошибку:

ERROR:gitosis.run_hook:Must have GIT_DIR set in enviroment

Я включил в мой git .bashrc строку:

GIT_DIR=$HOME/repositories/gitosis-admin.git/

и если я наберу Set в командной строке, я вижу:

GIT_DIR=/home/git/repositories/gitosis-admin.git/

Что еще я могу попробовать, потому что у меня заканчиваются идеи.

1 Ответ

1 голос
/ 14 апреля 2010

Прежде всего, не устанавливайте GIT_DIR - в этом нет необходимости.

Во-вторых, я полагаю, что ваша проблема в том, что вы добавили разрешение на запись для нового репозитория в свою конфигурацию Gitosis, но оно не создается при нажатии на вашу конфигурацию. Это связано с тем, что добавление нового репо в конфигурацию Gitosis не создает его - оно просто дает пользователю разрешение на его создание.

Например, допустим, вы добавили это в свою конфигурацию Gitosis:

[group new_repo]
    members = me
    writable = new_repo

Когда вы выталкиваете изменения, new_repo не создается - у вас просто есть разрешение на его создание. Чтобы создать его на сервере, создайте репозиторий на локальном компьютере, а затем добавьте сервер Gitosis в качестве удаленного:

$ git remote add gitosis git@git.example.com:new_repo.git

А затем вытолкнуть его:

$ git push gitosis master

Новый репо будет создан при выполнении git push.

...