Как вы можете настроить git-репозиторий на сервере и позволить нескольким пользователям выполнять git pull, вместо того, чтобы он принадлежал одному пользователю? - PullRequest
0 голосов
/ 07 февраля 2019

Как команда разработчиков, мы строим наши проекты локально (используя git) и отправляем код в частный репозиторий, специфичный для этого проекта.Для веб-приложений мы подключаемся к производственному серверу через SSH и извлекаем код. Наша проблема заключается в том, что только один человек имеет право делать git pull, когда обновление должно быть доставлено на сервер.

Когдадобавив проект на сервер, мы обычно запускаем следующую команду:

git clone https://username@bitbucket.org/team-name/test-repository.git

Затем, когда вы хотите сделать git pull для этого хранилища, вам будет предложено ввести пароль:

Password for 'username@bitbucket.org':

Однако, если другой пользователь попытается сделать git pull, у него также будет запрошен исходный пароль пользователя.То, что мы хотели бы сделать, - это авторизовать нашу команду или, по крайней мере, какой-то другой вид авторизации, где мы все могли бы сделать git pull без необходимости просить кого-то еще войти в систему и сделать это для друг друга.

Я пытался клонировать git-репо без имени пользователя:

git clone bitbucket.org:team-name/test-repository.git .

Но вместо того, чтобы это работало, мы получили такой результат:

Cloning into '.'...
Warning: Permanently added the RSA host key for IP address '0.0.0.0' to the 
list of known hosts.
Permission denied (publickey).
fatal: The remote end hung up unexpectedly   

Мы также нашли другой подход.Если бы я должен был войти в систему, чтобы сделать git pull, вы могли бы использовать эту команду:

git remote set-url origin https://username@bitbucket.org/team-name/test-repository.git

Это позволит вам затем указать хранилище на ваш последний коммит и выполнить git pull оттуда, используяваш собственный пароль, но я все еще думаю, что должен быть лучший способ.

Должен быть какой-то способ, где вы можете просто войти и использовать:

git pull
Password for 'username@bitbucket.org':

Даже если кто-то еще клонировалхранилище на первом месте?

1 Ответ

0 голосов
/ 07 февраля 2019

Попробуйте клонировать, не указав имя пользователя в URL-адресе .... и, конечно же, разные пользователи должны будут настроить свои сертификаты, чтобы волшебство могло произойти https://confluence.atlassian.com/bitbucket/set-up-an-ssh-key-728138079.html

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