Ответ 1
Собственно, гитоз поддерживает это. Вам просто нужно добавить ключ ssh в новую строку в файле ключа.
В git/gitosis один ключ ssh сохраняется с именем файла так же, как имя пользователя.
то есть. myusername.pub
Если я хочу получить доступ к репозиторию со многих компьютеров, я должен создать нового пользователя из каждого местоположения или есть способ иметь несколько ключей ssh для одного пользователя.
Собственно, гитоз поддерживает это. Вам просто нужно добавить ключ ssh в новую строку в файле ключа.
Вы больше не можете добавлять ключ в строку в файлах .pub
, как было предложено igorw. Я попробовал и получил следующее сообщение.
WARNING: a pubkey file can only have one line (key); ignoring kent.pub
Perhaps you're using a key in a different format (like putty/plink)?
If so, please convert it to openssh format using 'ssh-keygen -i'.
If you want to add multiple public keys for a single user, use
"[email protected]" file names. See the "one user, many keys"
section in doc/3-faq-tips-etc.mkd for details.
Я попробовал предлагаемое решение, которое должно было создать новый файл pub с именем <user>@<host>.pub
, и он работал нормально.
Пользователи в gitosis не являются "нормальными" пользователями, поэтому да, вы создаете пользователя для каждого ключа ssh. Эта статья объясняет это очень хорошо.
(В качестве альтернативы вы копируете свой ключ на всех своих машинах, а не как хорошо/безопасно, но отлично справляетесь)
Gitosis говорит через SSH и использует SSH-ключи для уникальной идентификации пользователей. Если вы хотите действовать как один и тот же пользователь на нескольких компьютерах, вам просто нужно скопировать закрытый ключ (~/.ssh/id_rsa
) в каталог ~/.ssh
на втором компьютере. Если вторая машина уже имеет ключ, вы можете скопировать ключ в другое имя файла (например, ~/.ssh/mygitkey
) и настроить SSH для его использования для соответствующего сервера. Измените/создайте файл ~/.ssh/config
и добавьте этот контент:
host mygitserver
identityfile ~/.ssh/mygitkey