Хранение и версионирование кода

Deckhouse Code предоставляет инструменты для работы с репозиториями Git. В каждом проекте создается репозиторий для хранения кода и отслеживания истории изменений.

Функции:

  • Поддержка распределённой системы контроля версий Git.
  • Возможность выполнения команд: клонирование (git clone), коммит (git commit), отправка (git push), получение изменений (git pull).
  • Автоматическое ведение истории изменений.

Поддержка форков (Forks)

Форк — копия репозитория, позволяющая вносить изменения без влияния на оригинальный код.

Как это работает:

  • Разработчик создаёт форк.
  • Вносит изменения в форке.
  • Отправляет Merge Request (MR) в основной репозиторий.
  • После проверки изменения могут быть приняты.

Используется в open-source проектах и при разработке с ограниченным доступом.

Работа с ветками (Branching) и слияние (Merging)

Ветки позволяют разрабатывать новые функции или исправлять ошибки, не влияя на основную кодовую базу.

Функции:

  • Создание новых веток (git branch <name>, git checkout -b <name>).
  • Переключение между ветками (git checkout <branch>).
  • Слияние изменений (git merge <branch>).
  • Защищённые ветки (Protected branches) — запрет на прямые изменения, требующий использования MR.
  • Автоматическое удаление слитых веток.

Web-редактор для кода

Позволяет редактировать файлы прямо в браузере без необходимости клонирования репозитория.

Функции:

  • Создание и редактирование файлов через веб-интерфейс.
  • Автоматическое создание коммитов после сохранения.
  • Встроенная поддержка Markdown и предпросмотр изменений.

Поддержка больших файлов (Git LFS — Large File Storage)

Поддержка Git LFS позволяет хранить и версионировать большие файлы, такие как:

  • Изображения;
  • Видео;
  • Аудиофайлы;
  • Данные машинного обучения.

Git LFS заменяет большие файлы ссылками, при этом сами файлы хранятся отдельно, что снижает нагрузку на репозиторий.