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

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

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

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

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

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

1) Клонировать репозиторий администратора Gitosis:

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

2) Добавьте открытые SSH-ключи Dev1 и tech_geek в 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


где новый проект имя репо (без суффикса .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

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