Проверка хранилища на основе загруженных ключей SSH

Я настроил свой сервер Git с помощью Gitosis. Мне нужно оформить репозиторий от имени другого пользователя на одном компьютере.

Предположим, есть две машины:

  1. Сервер на базе Linux (на котором репо проводится под именем пользователя "GIT"; другой пользователь "Dev1" является одним из разработчиков)
  2. Windows-машина (имя пользователя "tech_geek")

Как я могу оформить репо как "Dev1" на машине с Windows, а также как "tech_geek"? Таким образом, на машине с Windows будет проверено два репозитория.

2 ответа

1) Клон Gitosis admin repo:

$ git clone git@SERVER:gitosis-admin.git

2) Добавьте открытые ключи Dev1 и tech_geek по SSH в gitosis-admin/keydir (переименуйте каждый открытый ключ в id_rsa.pub) как dev1.pub и tech_geek.pub. Добавить в файл gitosis-admin/gitosis.conf

[group developers]
members = dev1 tech_geek
[group new_project]
writable = new_project
members = @developers


где new_project - имя репо (без суффикса.git)
3) совершить и нажать

$ cd gitosis-admin
$ git add .
$ git commit -m "New devs and repo for new_project"
$ git push

4) Попробуйте клонировать репо (как пользователь Dev1 или tech_geek) с хостов Windows

$ git clone git@SERVER:new_project.git

В настоящее время используется переменная окружения GIT_SSH_COMMAND . (GIT_SSH_COMMAND="ssh -i ~/.ssh/id_rsa_example" пример клона git)

Смотрите: https://superuser.com/questions/232373/how-to-tell-git-which-private-key-to-use

Если вы используете один из инструментов GUI, вам будет проще выбрать ключ.

Другие вопросы по тегам