Документация Engee

Удаленный репозиторий

Удаленный репозиторий на платформах для хостинга репозиториев, таких как GitLab, GitHub и Bitbucket, представляет собой хранилище, доступное через интернет для всех пользователей. Эти платформы обеспечивают централизованное место для хранения и управления проектами на основе системы контроля версий Git.

Engee имеет собственный удаленный репозиторий на хостинге GitLab по ссылке. Все пользователи, зарегистрированные в Engee, по умолчанию имеют доступ к удаленному репозиторию под логином/паролем учетной записи Engee.

Примеры интерфейса взяты с GitLab. Если вы используйте другой хостинг для работы с системой контроля версий — обратитесь к официальной документации соответствующего хостинга.

Вы можете работать с Git на сайте соответствующего хостинга, но чаще всего они используются в качестве хранилища проектов, а вся работа происходит локально на компьютере разработчика. Для доступа в удаленный репозиторий необходимо получить ссылку на этот репозиторий. Ссылка позволяет локальному репозиторию взаимодействовать с удаленным хранилищем, выполнять операции синхронизации и обмена изменениями между локальным и удаленным репозиториями с помощью Git. Подробнее о получении ссылок читайте ниже.

Удаленный репозиторий git.engee

Зайдите на сайт удаленного репозитория Engee под логином/паролем от вашей учетной записи Engee. Если вы никогда не пользовались git.engee, то откроется стартовое меню создания собственного проекта или присоединения к уже существующим:

gitlab main menu

Рассмотрим создание собственного проекта:

  • Выберите Create a project. Это откроет меню создания проекта. Будет предложен один из трех вариантов:

    • Create blank project — создайте пустой проект для хранения файлов, планирования работы и совместной работы над кодом и/или для других целей.

    • Create from template — создайте проект, предварительно заполненный необходимыми файлами, чтобы быстро приступить к работе. На выбор представлен ряд встроенных шаблонов под конкретные языки программирования и оболочки.

    • Import project — перенесите данные из внешнего источника, например GitHub, Bitbucket или другого экземпляра (хостинга) GitLab.

  • Создайте пустой проект (blank project), указав имя, видимость (доступ другим пользователям), конфигурацию (создаст README-файл) и индикатор (slug) при необходимости:

    gitlab blank project

    Созданный проект выглядит так:

    file browser clone 4

  • Теперь вы можете клонировать собственный удаленный репозиторий для работы локально:

    gitlab main menu 1 1

    Если у вас уже есть свои проекты, они будут отображаться на главной странице:

    exp user git engee

    Выберите нужный проект и скопируйте его, как было показано ранее.

    SSH-ключ генерируется автоматически при регистрации аккаунта Engee. Для работы с другими удаленными репозиториями (вне GitLab Engee) вам придется создавать ключ самостоятельно.
    Для работы с удаленным репозиторием Engee используйте именно SSH-ссылку.

Рассмотрим подключение к чужим проектам.

  • Выберите Explore public projects в главном меню GitLab если еще не создавали собственный проект:

    explore projects 1

    или выберите Explore projects из меню созданных проектов:

    explore projects

    Оба варианта откроют раздел поиска проектов:

    project search 1

  • Перейдите в одну из вкладок: All (все проекты), Most starred (самые популярные) или воспользуйтесь фильтром по имени (Filter by name). Далее выберите нужный проект с пометкой Public gitlab public button (публичный доступ).

    Вы можете клонировать все репозитории со знаком Public gitlab public button (для публичного использования). Репозитории со знаком Internal gitlab internal button (для внутреннего пользования) по умолчанию закрыты для других пользователей. Вы можете запросить доступ к такому репозиторию через команду Request Access на странице репозитория.
  • На странице выбранного проекта клонируйте его с помощью SSH-ключа. Вы также можете клонировать репозиторий с помощью HTTPS, но это потребует ввода логина/пароля при каждом взаимодействии с репозиторием (если они не были сохранены в кэше):

    gitlab main menu 1

Работа с удаленными репозиториями в Engee

Для работы с удаленными репозиториями в Engee необходимо самостоятельно добавить SSH-ключ. Команды для добавления ключа вводятся в командную строку Engee img 41 1 2 в режиме оболочки (shell).

Для переключения командной строки в режим оболочки (shell) используйте точку с запятой ; — командная строка сменит вид с engee> на shell> и будет поддерживать все Git-команды.

Добавьте SSH-ключ по следующей инструкции (на примере хостинга GitLab):

  1. Сгенерируйте ключ с помощью команды ssh-keygen, введя ее в командную строку в режиме оболочки (shell):

    ssh-keygen -C "comment"
  2. Командная строка предложит сохранить получившийся ключ. Директорию сохранения ключа можно не менять. Далее нажимайте Enter на все запросы командной строки пока не получите randomart — визуальное представление SSH-ключа:

    randomart ssh

    Получение изображения означает, что ключ был успешно создан. По умолчанию ключ будет сохранен в директории /home/engee/.ssh/id_rsa. Папка .ssh будет скрыта в файловом браузере Engee.

  3. Получите содержимое SSH-ключа с помощью команды:

    cat ~/.ssh/id_rsa.pub

    randomart ssh 1

  4. Скопируйте содержимое SSH-ключа и вернитесь на сайт хостинга. Нажмите на аватар пользователя и выберите в контекстном меню пункт Edit profile.

    edit profile1

  5. Откройте раздел SSH-keys, вставьте ранее скопированный ключ в специально отведенное поле и нажмите на кнопку Add key:

    add key

  6. Далее зайдите на страницу нужного проекта и клонируйте его репозиторий с помощью SSH-ключа:

    gitlab main menu 1

    Введите команду для клонирования репозитория:

    git clone git@git.engee.com:имя пользователя/имя репозитория.git
  7. О дальнейшей работе с клонированным репозиторием читайте в статье.

Ключ имеет ограниченное время действия, которое можно продлить в разделе SSH-keys. Получив ключ, вы можете клонировать удаленные репозитории с GitLab для работы в Engee и локально на компьютере.

Изменение файла конфигурации через редактор nano в Engee

expirienced users 1

Изменение файла конфигурации SSH (~/.ssh/config) упрощает процесс подключения к удаленным репозиториям, особенно если у вас несколько SSH-ключей для разных хостингов или репозиториев. Для изменения конфигурации SSH можно использовать встроенный в командную строку редактор nano. Для этого:

  1. Переключите командную строку в режим оболочки shell с помощью точки с запятой ; — командная строка сменит вид с engee> на shell>.

  2. Введите команду открытия файла конфигурации SSH с помощью текстового редактора nano:

    nano ~/.ssh/config
  3. В окне редактора задайте адрес хостинга (в нашем случае git.engee.com) и путь до сгенерированного в Engee ключа как показано в примере:

    git nano 1

    Host git.engee.com
            User git
            IdentityFile /home/engee/.ssh./id_rsa
    Host *
            StrictHostKeyChecking no

    где

    • Host — адрес хостинга.

    • User — имя пользователя.

    • IdentityFile — путь до сгенерированного ключа (указан по умолчанию).

    • StrictHostKeyChecking — отключение проверки хост-ключей. Устанавливается в no, чтобы автоматически добавлять новые хост-ключи без запроса подтверждения.

  4. Нажмите Ctrl+X, чтобы сохранить изменения (появится нижняя строка с запросом Save modified buffer?):

    git nano x

  5. Нажмите Y для сохранения изменений и подтвердите сохранение в директорию клавишей Enter. После сохранения редактор nano закроется автоматически.

    git nano 3

  6. Теперь вы можете клонировать удаленный репозиторий в Engee привычными способами с помощью нескольких ключей и с разных хостингов.