Назад | Перейти на главную страницу

gitolite, чтобы разрешить пользователям, уже присутствующим в файле authorized_keys

Я использую gitolite, чтобы ограничить права доступа к репозиторию, и до сих пор он работал хорошо, пока я не попытался клонировать и нажимать с пользователем, чей открытый ключ уже добавлен в authorised_keys, а не через gitolite. Думаю, проблема в том, что я использую ключ, у которого есть доступ к серверу. Когда я пытаюсь клонировать server: reponame, я получаю сообщение об ошибке, говорящее, что репозиторий не существует, и когда я клонирую из репозиториев / reponame и пытаюсь нажать, я получаю следующие ошибки:

Counting objects: 3, done.
Delta compression using up to 4 threads.
Compressing objects: 100% (3/3), done.
Writing objects: 100% (3/3), 370 bytes | 0 bytes/s, done.
Total 3 (delta 2), reused 0 (delta 0)
remote: Empty compile time value given to use lib at hooks/update line 6
remote: Use of uninitialized value in require at hooks/update line 7.
remote: Can't locate Gitolite/Hooks/Update.pm in @INC (@INC contains:  /Library/Perl/Updates/5.10.0 /System/Library/Perl/5.10.0/darwin-thread-multi-2level /System/Library/Perl/5.10.0 /Library/Perl/5.10.0/darwin-thread-multi-2level /Library/Perl/5.10.0 /Network/Library/Perl/5.10.0/darwin-thread-multi-2level /Network/Library/Perl/5.10.0 /Network/Library/Perl /System/Library/Perl/Extras/5.10.0/darwin-thread-multi-2level /System/Library/Perl/Extras/5.10.0 .) at hooks/update line 7.
remote: BEGIN failed--compilation aborted at hooks/update line 7.
remote: error: hook declined to update refs/heads/master

Есть ли способ дать пользователям, у которых уже есть доступ к серверу, разрешение для репозиториев gitolite? Я знаю, что могу использовать другой ключ для пользователя и добавить его в каталог ключей gitolite, но для этих пользователей было бы гораздо естественнее иметь доступ и к репозиториям gitolite.

tl; dr version: использовать отдельный ключевой файл для гитолита.

лучше поздно, чем никогда.

просто добавьте уже существующий файл ключей в каталог gitolite / keys, git add, git commit, git push. gitolite сгенерирует сообщение вроде

remote: WARNING: keydir/keyfile_which_was_added.pub duplicates a non-gitolite key, sshd will ignore it

и /home/git/.ssh/authorized_keys содержит два раза ключ, один раз уже существующий и еще один в

# gitolite start 

и

# gitolite end

раздел.

я попытался переместить существующий (старый) ключ после # gitolite раздел, но тогда мой логин ssh отображает только сообщение gitolite и закрывается.

решение будет использование отдельного публичного ключа для гилолита.