В данный момент я активно изучаю Git и меня интересует тема работы с сервером.
Знаю, что для создания Git-сервера, сначала необходимо создать голый репозиторий. Сделал я это использовав команду git clone --bare test_project clone_test_project.git . Тутже первый вопрос: обязательно ли в названии голого репозитория прописывать в конце .git? Вопрос глупый, наверное, но я не разобрался в вопросе, поэтому и проверить, будет ли все работать, если не прописывать в названии .git не могу.
Далее я пользовался документацией -
http://git-scm.com/book/ru/v2/Git-на-сервере-Устан...
Запоролся на этапе размещения этого самого голого репозитория на сервере. В документации говорилось, что для этого нужно ввести команду scp -r my_project.git user@git.example.com:/srv/git. Мне непонятна часть user@git.example.com:/srv/Git. Что это? Немного посидев, у меня появилась теория, откуда это можно взять. Свой репозиторий я размещаю на сервере gitlab. Поэтому чтобы залить свой репозиторий на сервере, там первоначально нужно создать пустой проект (опять же, я так думаю, потому что чёткой инструкции, которая мне подходит, я не нашёл). Я это сделал и перешёл на его главную страницу. Там нажал на синюю кнопку Clone и мне высветились два варианта ссылки на мой проект в gitlab. Я подумал, что это то, что мне нужно. Скопировал то, где было написано Clone with SSH, так как именно протокол ssh я хочу использовать для доступа к своему репозиторию на сервере. Получилось git@gitlab.com:potemkin277/test-project.git . И в конечном итоге вся моя команда для размещения голого репозитория на сервере выглядела так: scp -r clone_test_project.git git@gitlab.com:potemkin277/test-project.git .
Вот здесь и возникает проблема. Когда ввожу это в git BASH, предварительно зайдя в папку этого голого репозитория, мне выдаётся ошибка:
git@gitlab.com: Permission denied (publickey, keyboard-interactive).
lost connection
Покопавшись на форумах, понял, что проблема здесь в том, что моя пара ключей не зарегистрирована в файле authorized_keys. Честно говоря, что это я тоже не совсем понял, потому что протокол ssh тоже только начинаю изучать. Но так или иначе этот файл я нигде не нашёл. Попробовал создать свой в папке .ssh и скопировал туда публичную часть своей пары ключей. Это был просто крик отчаяния и, как и ожидалось, ничего не вышло. Для ssh я, если что, использую программку PuTTY.