Gitolite - Как создать пользователей? - PullRequest
2 голосов
/ 11 апреля 2011

Я попытался установить git + gitolite, следуя этому руководству - используя установку root с сервера. Я просто не понимаю, должны ли новые пользователи gitolite иметь свои учетные записи? . Когда я добавляю ключ tester.pub в папку keydir и настраиваю доступ к некоторому хранилищу, git всегда запрашивает пароль и не позволяет мне что-либо клонировать

git clone tester@myserver.com:testrepo
Initialized empty Git repository in /home/testuser/git/testrepo/.git/
testuser@myserver.com's password:
Permission denied (publickey,password).
fatal: The remote end hung up unexpectedly

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

Так, может, кто-нибудь покажет мне, что я неправильно понял?

Большое спасибо.


EDIT:

Хорошо ... Я переустанавливаю gitolite, используя установку клиента transcript . Теперь добавление и нажатие новых ключей публикации успешно изменяет ~ / .ssh / authorized_keys для моего git пользователя на сервере. Так что это кажется лучше, чем моя первая попытка. Но я до сих пор не могу клонировать какой-либо репозиторий из другого места. Когда я пытаюсь добавить ключ публикации + редактировать конфигурацию для моего компьютера с Windows с помощью msysgit, тогда попробуйте

$ git clone git@server.com:project.git
cloning into project...
Fatal ERROR: unable to authenticate
Fatal: the remote end hung up unexpectedly

С другой стороны, когда попробуйте другой Linux, он все еще запрашивает пароль.

# git clone git@server.com:project.git
Cloning into project...
git@server.com's password: 

Даже когда я предоставляю пароль для пользователя git:

fatal: 'project.git' does not appear to be a git repository
fatal: The remote end hung up unexpectedly

Возможно, это вызвано взломом системной учетной записи.

Теперь я действительно не знаю, что делать - я должен как-то создать .ssh / config на каждом клиенте, чтобы он работал?

Теперь я начинаю немного раздражаться и расстраиваться, и я, вероятно, удалю все и попробую mercurial: -D Только кто-нибудь может мне помочь :) Спасибо.

Ответы [ 3 ]

5 голосов
/ 31 мая 2011

Да, вот в чем проблема ... Я тоже столкнулся с тем же. Я создал открытый ключ, используя формат puttygen ssh2-rsa. Гитолит не принимает это. Вам необходимо конвертировать в openssh

ssh-keygen -i -f yourname.pub> yourname_openssh.pub

Теперь используйте этот преобразованный открытый ключ

3 голосов
/ 11 апреля 2011

Нет папки 'keydata', только 'keydir' и 'conf' (как указано в документации ).

Если вы локально клонировали репо gitolite-admin (git clone gitolite@server:gitolite-admin), вам необходимо:

  • добавьте ваш новый открытый ключ с именем пользователя в репозитории keydir: username.pub
  • добавить это же имя пользователя в одну из групп пользователей в conf/gitolite.conf
  • отодвиньте новые изменения на сервере gitolite (в репо gitolite-admin есть специальный хук, который добавит новый открытый ключ в файл ~/.ssh/authorized_keys).
1 голос
/ 14 апреля 2011

Я решил проблему с msysgit.

  1. Я перезапускаю msysgit и использую OPENSSH вместо PUTTY (это рекомендуется в руководстве по установке gitolite - но я уже устанавливал msysgit ранее)
  2. , когдагенерируя ssh-ключ, он должен иметь имя по умолчанию id_rsa в противном случае у меня это не сработало

Поскольку у меня всегда было произвольное имя для ключа, я могуне говорите, если шаг 1 необходим, и я не буду пробовать его снова :) Теперь я могу клонировать / фиксировать / нажать - наконец.

Особое спасибо VonC за его терпение

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...