Есть ли способ выполнить небольшие не требующие обслуживания Gitosis запросы только для чтения?
Мы перемещаем наши репозитории Git из простого Git/SSH в Gitosis по соображениям безопасности.
Одно из преимуществ простого Git/SSH заключается в том, что любой пользователь может подключиться к серверу Git по SSH и выполнить запрос Git только для чтения, не требуя полного локального клона.
Например, если я хочу найти хеш коммита ветки master (но больше ничего), я могу запустить:
ssh gitserver 'cd / path / to / repo && git rev-parse master'
Это очень полезно, если полное репо очень велико, и я хочу узнать только несколько небольших четко определенных фрагментов информации.
Если мы переместим git-репо в Gitosis, метод SSH больше не будет возможен. Есть ли другой способ для непривилегированного пользователя выполнить небольшой запрос только для чтения без полного клона репо? Благодарю.
1 ответ
Используйте Gitolite вместо Gitosis (который устарел с 2009 года).
Таким образом, вы получаете выгоду от команд gitolite, которые позволяют выполнять различные операции без необходимости подключения к серверу ssh.
Вы можете определить свои собственные "неосновные" команды, которые позволят вам выполнить любую операцию, которую вы хотите (при соблюдении ACL, который вы определили, что означает, что вы не сможете выполнять эти команды в репозиториях, к которым у вас нет доступа). чтобы, как определено в gitolite.conf
файл)