2013-06-13 4 views
0

Я настраиваю сервер git (на коробке RHEL 6).Выполнение git-shell interactive

Я создал пользователя git и установил его оболочку в/usr/bin/git-shell Я создал каталог git-shell-команд в доме пользователя (/ home/git) и chmod до 755.

Я загрузил команды справки и списка из github, поместил их в команды git-shell и сделал их исполняемыми.

Я также создал каталог .ssh и authorized_keys.

Теперь на моем поле, когда я SSH GIT @ thegitserver я получаю ошибку

Last login: Thu Jun 13 11:56:07 2013 from 192.168.1.2 
fatal: What do you think I am? A shell? 
Connection to 192.168.1.3 closed. 

Что еще нужно сделать, чтобы сделать его интерактивным?

ответ

1

Так что это проблема с версией git. Версия, которая поставляется с RHEL 6 (1.7.1), слишком устарела, чтобы правильно работать с каталогом git-shell-команд. Модернизация до 1,8 решила это.

-1

Эта страница git-shell описывает именно этот случай. Вам нужно создать каталог с именем ~/git-shell-commands. В этом каталоге вы помещаете файлы с командами, которые вы хотите использовать.

Почему вы так или иначе хотите? Если вы хотите настроить сервер git, gitolite - лучшее решение, которое я знаю.

+0

Как я уже упоминал в своем вопросе, я создал каталог команд git-shell-команд и поместил команды справки и списка из git repo в github. Он не работает. Что касается гитолита, я знаю об этом, но на самом деле просто хочу, чтобы этот ограниченный доступ не был чем-то сложным, как гитолит. – Jistanidiot

+0

Gitolite не требуется, вы уже можете создавать общие годовые репозитории git и использовать linux acls, учетные записи пользователей, git's pre-receive hook, чтобы сделать свой собственный безопасный git над рабочим процессом SSH. По крайней мере, это даст вам знания о Git, что полезно перед переключением на любой более продвинутый проект. – pinkvoid