2016-04-19 2 views
0

Мы создаем проект git с несколькими подмодулями и несколькими пользователями. У всех пользователей есть ssh-доступ к репозиториям git.SSH URL-адрес без пользователя

Подмодули уточняются для userA.
Проблема заключается в том, что адрес в файле .gitmodules является SSH: // пользователь A @ сервер: порт/submodule.location.git формат (команда мерзавец подмодуль добавил подобное).

Поэтому, когда USERB клонов репо и шины для обновления подмодулей, URL-адрес по-прежнему будет Пользователь ... поэтому клон не удастся.

Пытался удалить имя пользователя, ssh://server:port/location.git, но он по-прежнему не работает с ошибкой publickey.

Как мы должны подходить к этому?
Какой формат следует использовать, чтобы git всегда заменял текущего пользователя?

спасибо.

+0

Если вы пытаетесь «git clone ssh: // server: port/location.git' как userB, не будучи подмодулем, это работает? –

ответ

0

Что вы можете сделать, это перейти на протокол git://. Этот протокол является протоколом ssh, который использует ключ ssh для идентификации пользователя, и вам не нужно использовать имя пользователя.

, например, это образец из GitHub:

[email protected]:... 

Как вы можете видеть, у вас нет каких-либо имя пользователя в URL (если вы имеете любой его пользователь, который создал репозиторий, и пользователь кто клон)

Переключитесь на git protocol, и вам не нужно будет указывать ни одного пользователя в URL-адресе. просто создайте ключи, добавьте их на свой сервер и это.

Смежные вопросы