Удаленный репозиторий
Удаленный репозиторий на платформах для хостинга репозиториев, таких как GitLab, GitHub и Bitbucket, представляет собой хранилище, доступное через интернет для всех пользователей. Эти платформы обеспечивают централизованное место для хранения и управления проектами на основе системы контроля версий Git.
Engee имеет собственный удаленный репозиторий на хостинге GitLab по ссылке. Все пользователи, зарегистрированные в Engee, по умолчанию имеют доступ к удаленному репозиторию под логином/паролем учетной записи Engee. |
Примеры интерфейса взяты с GitLab. Если вы используйте другой хостинг для работы с системой контроля версий — обратитесь к официальной документации соответствующего хостинга.
Вы можете работать с Git на сайте соответствующего хостинга, но чаще всего они используются в качестве хранилища проектов, а вся работа происходит локально на компьютере разработчика. Для доступа в удаленный репозиторий необходимо получить ссылку на этот репозиторий. Ссылка позволяет локальному репозиторию взаимодействовать с удаленным хранилищем, выполнять операции синхронизации и обмена изменениями между локальным и удаленным репозиториями с помощью Git. Подробнее о получении ссылок читайте ниже. |
Удаленный репозиторий git.engee
Зайдите на сайт удаленного репозитория Engee под логином/паролем от вашей учетной записи Engee. Если вы никогда не пользовались git.engee, то откроется стартовое меню создания собственного проекта или присоединения к уже существующим:
Рассмотрим создание собственного проекта:
-
Выберите Create a project. Это откроет меню создания проекта. Будет предложен один из трех вариантов:
-
Create blank project — создайте пустой проект для хранения файлов, планирования работы и совместной работы над кодом и/или для других целей.
-
Create from template — создайте проект, предварительно заполненный необходимыми файлами, чтобы быстро приступить к работе. На выбор представлен ряд встроенных шаблонов под конкретные языки программирования и оболочки.
-
Import project — перенесите данные из внешнего источника, например GitHub, Bitbucket или другого экземпляра (хостинга) GitLab.
-
-
Создайте пустой проект (blank project), указав имя, видимость (доступ другим пользователям), конфигурацию (создаст README-файл) и индикатор (slug) при необходимости:
Созданный проект выглядит так:
-
Теперь вы можете клонировать собственный удаленный репозиторий для работы локально:
Если у вас уже есть свои проекты, они будут отображаться на главной странице:
Выберите нужный проект и скопируйте его, как было показано ранее.
SSH-ключ генерируется автоматически при регистрации аккаунта Engee. Для работы с другими удаленными репозиториями (вне GitLab Engee) вам придется создавать ключ самостоятельно. Для работы с удаленным репозиторием Engee используйте именно SSH-ссылку.
Рассмотрим подключение к чужим проектам.
-
Выберите Explore public projects в главном меню GitLab если еще не создавали собственный проект:
или выберите Explore projects из меню созданных проектов:
Оба варианта откроют раздел поиска проектов:
-
Перейдите в одну из вкладок: All (все проекты), Most starred (самые популярные) или воспользуйтесь фильтром по имени (Filter by name). Далее выберите нужный проект с пометкой Public (публичный доступ).
Вы можете клонировать все репозитории со знаком Public (для публичного использования). Репозитории со знаком Internal (для внутреннего пользования) по умолчанию закрыты для других пользователей. Вы можете запросить доступ к такому репозиторию через команду Request Access на странице репозитория.
-
На странице выбранного проекта клонируйте его с помощью SSH-ключа. Вы также можете клонировать репозиторий с помощью HTTPS, но это потребует ввода логина/пароля при каждом взаимодействии с репозиторием (если они не были сохранены в кэше):
Работа с удаленными репозиториями в Engee
Для работы с удаленными репозиториями в Engee необходимо самостоятельно добавить SSH-ключ. Команды для добавления ключа вводятся в командную строку Engee в режиме оболочки (shell).
Для переключения командной строки в режим оболочки (shell) используйте точку с запятой ; — командная строка сменит вид с engee> на shell> и будет поддерживать все Git-команды.
|
Добавьте SSH-ключ по следующей инструкции (на примере хостинга GitLab):
-
Сгенерируйте ключ с помощью команды
ssh-keygen
, введя ее в командную строку в режиме оболочки (shell):ssh-keygen -C "comment"
-
Командная строка предложит сохранить получившийся ключ. Директорию сохранения ключа можно не менять. Далее нажимайте Enter на все запросы командной строки пока не получите
randomart
— визуальное представление SSH-ключа:Получение изображения означает, что ключ был успешно создан. По умолчанию ключ будет сохранен в директории
/home/engee/.ssh/id_rsa
. Папка .ssh будет скрыта в файловом браузере Engee. -
Получите содержимое SSH-ключа с помощью команды:
cat /home/engee/.ssh/id_rsa.pub
-
Скопируйте содержимое SSH-ключа и вернитесь на сайт хостинга. Нажмите на аватар пользователя и выберите в контекстном меню пункт Edit profile.
-
Откройте раздел SSH-keys, вставьте ранее скопированный ключ в специально отведенное поле и нажмите на кнопку Add key:
-
Далее зайдите на страницу нужного проекта и клонируйте его репозиторий с помощью SSH-ключа:
Введите команду для клонирования репозитория:
git clone git@git.engee.com:имя пользователя/имя репозитория.git
-
О дальнейшей работе с клонированным репозиторием читайте в статье.
Ключ имеет ограниченное время действия, которое можно продлить в разделе SSH-keys. Получив ключ, вы можете клонировать удаленные репозитории с GitLab для работы в Engee и локально на компьютере. |
Изменение файла конфигурации через редактор nano в Engee
Изменение файла конфигурации SSH (~/.ssh/config) упрощает процесс подключения к удаленным репозиториям, особенно если у вас несколько SSH-ключей для разных хостингов или репозиториев. Для изменения конфигурации SSH можно использовать встроенный в командную строку редактор nano. Для этого:
-
Переключите командную строку в режим оболочки
shell
с помощью точки с запятой ; — командная строка сменит вид сengee>
наshell>
. -
Введите команду открытия файла конфигурации SSH с помощью текстового редактора nano:
nano ~/.ssh/config
-
В окне редактора задайте адрес хостинга (в нашем случае git.engee.com) и путь до сгенерированного в Engee ключа как показано в примере:
Host git.engee.com User git IdentityFile /home/engee/.ssh./id_rsa Host * StrictHostKeyChecking no
где
-
Host
— адрес хостинга. -
User
— имя пользователя. -
IdentityFile
— путь до сгенерированного ключа (указан по умолчанию). -
StrictHostKeyChecking
— отключение проверки хост-ключей. Устанавливается вno
, чтобы автоматически добавлять новые хост-ключи без запроса подтверждения.
-
-
Нажмите Ctrl+X, чтобы сохранить изменения (появится нижняя строка с запросом Save modified buffer?):
-
Нажмите Y для сохранения изменений и подтвердите сохранение в директорию клавишей Enter. После сохранения редактор nano закроется автоматически.
-
Теперь вы можете клонировать удаленный репозиторий в Engee привычными способами с помощью нескольких ключей и с разных хостингов.