У меня есть рабочая установка Gitosis, но мне интересно, как gitosis-serve
команда когда-либо вызывается! Насколько я понимаю, когда вы подключаетесь через SSH в качестве git
пользователь (использующий git@host
), serve.py
скрипт вызывается скриптом, сгенерированным setuptools в /usr/bin/gitosis-serve
, который затем запускает git-shell
.
Однако как git
логин пользователя подключен к /usr/bin/gitosis-serve
?
Спасибо
Когда вы добавляете SSH-ключ в gitosis-admin.git
репозиторий, он автоматически извлекается во время фиксации и ~/.ssh/authorized_keys
файл для пользователя gitosis обновлен для вызова gitosis-serve
для данного ключа SSH. То, какими репозиториями реально может управлять пользователь, конечно, зависит от того, какими репозиториями в gitosis.conf
что им был предоставлен доступ.
Я нашел ответ Вот. В основном /home/git/.ssh/authorized_keys
файл (сгенерированный gitosis-init
) отображает каждый зарегистрированный ключ на gitosis-serve
команда!