Работа с Git: клонирование репозитория, получение и отправка изменений

Клонирование репозитория

Клонирование позволяет скопировать удалённый Git-репозиторий на локальный компьютер.
Для клонирования выполните команду в терминале:

git clone <repository-url>

Замените repository-url на HTTPS- или SSH-URL вашего репозитория.

Получение изменений

Чтобы получить последние изменения из удалённого репозитория, перейдите в папку репозитория на локальном компьютере и выполните команду:

git pull origin <branch-name>

Замените branch-name на имя ветки, например, main или feature/my-new-feature.

Отправка изменений (Push)

  1. Внесите необходимые исправления в кодовую базу.

  2. Зафиксируйте изменения командой:

    git commit -am "Описание ваших изменений"
    
  3. Отправьте изменения в удалённый репозиторий:

    git push origin <branch-name>
    

Замените branch-name на имя ветки, в которую отправляются изменения.

Создание feature-ветки

Feature-ветки используются для разработки новых функций или внесения исправлений. Ниже приведены шаги по созданию feature-ветки и отправке её в Deckhouse Code.

  1. Клонирование репозитория:

    git clone <repository-url>
    

    Замените repository-url на актуальный URL репозитория.

  2. Переход в папку репозитория:

    cd <путь-до-папки-с-репозиторием>
    
  3. Создание новой feature-ветки:

    git checkout -b <branch-name>
    

    Данная команда создает и переключает на новую ветку. Замените branch-name на имя новой ветки. Флаг -b указывает Git создать новую ветку и сразу на неё переключиться.

  4. Отправка новой ветки в удалённый репозиторий:

    git push origin <branch-name>
    

    Убедитесь, что ветка появилась в удалённом репозитории. Для проверки откройте проект в Deckhouse Code и найдите новую ветку в меню выбора веток.

Запрос на слияние (Merge Request)

Запрос на слияние используется для объединения изменений из одной ветки в другую. Это улучшает прозрачность и безопасность разработки.

Преимущества использования Merge Request:

  1. Контроль качества кода:

    • Позволяет проводить ревью перед слиянием в основную ветку.
    • Помогает обнаруживать ошибки и поддерживать единый стиль кодирования.
  2. Организация совместной работы:

    • Разработчики могут комментировать код, предлагать исправления и обсуждать изменения.
  3. Автоматизация тестирования и CI/CD:

    • MR может интегрироваться с CI/CD-пайплайнами для автоматического тестирования изменений.
  4. История изменений и документация:

    • MR содержит описание изменений, комментарии ревьюеров и обсуждения.
  5. Гибкость разработки и контроль версий:

    • Позволяет легко откатить или внести исправления в код до слияния.
  6. Повышение безопасности:

    • Предотвращает внедрение уязвимостей благодаря проверкам и ревью.

Создание запроса на слияние

  1. Переход в раздел Merge Requests:
    • Откройте проект в Deckhouse Code.
    • В боковой панели выберите раздел: «Код» -> «Запросы на слияние».
  2. Создание нового запроса:
    • Нажмите кнопку «Новый запрос на слияние».
    • Выберите исходную ветку (с изменениями) и целевую ветку (обычно main).
    • Нажмите «Сравнить ветки и продолжить».
  3. Заполнение деталей запроса:
    • Название: опишите кратко суть изменений.
    • Описание: укажите подробности, при необходимости добавьте скриншоты.
    • Ответственный: назначьте пользователя, который будет проводить ревью.
  4. Отправка запроса:
    • Нажмите “Создать запрос на слияние”.

Ревью и слияние запроса

Слияние происходит после выполнения следующих условий:

  • Запрос на слияние прошёл ревью и получил необходимое количество одобрений.
  • Отсутствуют конфликты между ветками.
  • Все CI/CD пайплайны успешно завершены.

Чтобы завершить процесс, нажмите кнопку «Слияние» на странице запроса.