Поделиться через


О ветвях и политиках ветвей

Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019

Политики ветви являются важной частью рабочего процесса Git и позволяют:

  • Изоляция выполняемых работ от завершенной работы в главной ветви
  • Обеспечение сборки изменений до их получения до главного
  • Ограничение того, кто может участвовать в конкретных ветвях
  • Принудительное применение тех, кто может создавать ветви и рекомендации по именованию для ветвей
  • Автоматическое включение правильных рецензентов для каждого изменения кода
  • Применение рекомендаций с помощью обязательных рецензентов кода

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

Политика

По умолчанию

Description


Выключено

Требовать утверждения указанного количества рецензентов для запросов на вытягивание.

Выключено

Поощрение прослеживаемости путем проверки связанных рабочих элементов в запросах на вытягивание.

Выключено

Убедитесь, что разрешены все комментарии по запросам на вытягивание.

Выключено

Журнал ветви управления путем ограничения доступных типов слияния при завершении запросов на вытягивание.

Выключено

Добавьте одну или несколько политик для проверки кода путем предварительного объединения и создания изменений запроса на вытягивание. Также может включать или отключать политики.

Выключено

Добавьте одну или несколько политик, чтобы требовать от других служб публикации состояния успешного выполнения запросов на вытягивание. Также может включать или отключать политики.

Выключено

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

Принятие стратегии ветвления Git

В репозитории есть несколько критически важных ветвей, которые команда полагается на всегда быть в хорошей форме, таких как ваша main ветвь.

Требовать запросы на вытягивание для внесения изменений в этих ветвях. Если разработчики передают изменения непосредственно в эти защищенные ветви, эти изменения будут отклонены.

Оставьте стратегию ветви простой, создав стратегию из следующих трех концепций:

  1. Используйте ветви возможностей для всех новых возможностей и исправления ошибок.
  2. Слияние ветвь компонента в основную ветвь с помощью запросов на вытягивание.
  3. Следите за высоким качеством актуальной основной ветви.

Стратегия, которая расширяет эти понятия и избегает противоречий, приводит к тому, что рабочий процесс управления версиями для вашей команды является согласованным и простым.

Создание рабочих элементов в ветвях

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

Фиксация изменений в ветви не влияет на другие ветви. Вы можете совместно использовать ветви с другими пользователями, не объединяя изменения в основной проект.

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

Так как ветви являются упрощенными, переключение между ветвями быстро и легко. Git не создает несколько копий исходного источника при работе с ветвями. Она использует сведения журнала, хранящиеся в фиксациях, для повторного создания файлов в ветви при запуске работы над ним.

Рабочий процесс Git должен создавать и использовать ветви для управления функциями и исправлениями ошибок.

Остальная часть рабочего процесса Git, например общий доступ к коду и просмотр кода с запросами на вытягивание во всех ветвях.

Изоляция работы в ветвях упрощает изменение того, над чем вы работаете, изменяя текущую ветвь.

Как создаются ветви Git?

Вы создаете ветви с помощью branch команды. Branch создает ссылку в Git для новой ветви и указатель обратно на родительскую фиксацию, чтобы Git сохранял журнал изменений при добавлении фиксаций в ветвь.

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

Отслеживание вышестоящего потока упрощает синхронизацию изменений с другими пользователями с помощью отправки и извлечения.

Визуальный элемент ветви от главного в Git

На этом снимке экрана вы увидите новую ветвь, созданную из основной ветви. Работа продолжается в ветвях и фиксациях, добавляется в обе ветви.

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

Переключение между локальными ветвями с помощью checkout команды. Git изменит файлы на компьютере, чтобы они соответствовали последней фиксации в проверка размещенной ветви.

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

Распространенная ошибка заключается в том, чтобы внести некоторые изменения и commit они, понять, что вы находитесь в неправильной ветви, а затем checkout в правильную ветвь.

Последние изменения больше не будут находиться в файловой системе, так как каждая ветвь имеет собственную версию кода.

Git возвращает состояние файлов к последней фиксации в ветви, в которую вы переключились, а не в предыдущую ветвь, в которую вы внесли изменения.

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

Использование ветвей для управления разработкой

Git отслеживает, с какой ветвью вы работаете, и гарантирует, что при checkout выполнении ветви файлы соответствуют последней фиксации в ветви.

Ветви позволяют одновременно работать с несколькими версиями исходного кода в одном локальном репозитории Git.

Сообщите Git, с какой ветвью вы хотите работать, checkoutи Git заботится о настройке правильных версий файлов для этой ветви.

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

Настройте среду разработки один раз после клонирования. Затем используйте ветви Git для переключения между работой функций и исправлением ошибок.

Ветвление руководства

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