Настройка хостинга репозиторий GitLab
Open Source версия GitHub. Теперь вы можете создать свой хостинг репозиториев.
Настройка нового локального репозитория
Начнем с SSH ключей.
Стоит различать 2 разновидности SSH пар ключей - которые использует Git и которые используют клиенты типа Source Tree, Tortoise Git. Проблема первой разновидности в том, что без лишних телодвижений допускается использование только одной пары ключей, в то время как каждый репозиторий требует уникальный ключ, вторых же можно наплодить неограниченное количество (на самом деле можно использовать более 1 пары ключей первого типа, но предлагаемые решения работают либо частично, либо не работают вообще).
Для начала, сделаем ключи для Git, для этого запустим Git Bash
.
Git подразумевает что в Windows среде ключи лежат по адресу ~ /.ssh/id_rsa
, где ~
- путь к домашней директории пользователя (например c:\Users\USERNAME
), в папке которого есть каталог .ssh
, в котором лежит пара ключей - id_rsa.pub
и id_rsa
(соответственно публичная часть и приватная).
Пришло время для генерирования ключей, возвращаемся к Git Bash
и в консоль вводим следующее:
1 | ssh-keygen -t rsa -C "your_email@example.com" |
1 | Generating public/private rsa key pair. |
Переходим в личном кабинете в профиль, на вкладку с SSH ключами: И добавляем сгенерированный ключ из файла id_rsa.pub
(title заполнять не нужно - подставляется автоматически из комментария к ключу, таким образом ключи удобно отличать визуально, не сравнивая fingerprints.)
Убеждаемся что файл принят системой.
HTTP доступ к репозиторию
Настала очередь собственно локального репозитория. Возвращаемся в Git Bash
и поочередно вводим команды, которые услужливо подсказывает стартовая страница вашего проекта:
1 | git config --global user.name "Admin Server" |
1 | mkdir test-project # создаем новую папку для проекта |
Теперь если зайти в свой личный кабинет, то сначала увидим сообщение про создание новой ветки master в нашем проекте.
Галочка в зеленом кружочке сообщает что данная папка успешно подключена к VCS.
Итак, мы создали первый тестовый проект, подключили его к удаленному репозиторию по HTTP протоколу и сделали первый commit первого файла - README.