Вилки
Azure DevOps Services | Azure DevOps Server 2022 — Azure DevOps Server 2019
Visual Studio 2019 | Visual Studio 2022
Git репозиторий полезны, когда люди хотят вносить экспериментальные, рискованные или скрытые изменения в базу кода, но эти изменения необходимо изолировать от базы кода в исходном репозитории. Новый вилку — это в основном новый удаленный репозиторий, который использует исходный код исходного репозитория.
В качестве независимой версии изменения, внесенные в вилку, например добавление фиксаций или ветвей, скрыты из исходного репозитория. Если вы хотите объединить изменения базы кода в исходный репозиторий, необходимо создать запрос на вытягивание (PR), чтобы запросить проверку и утверждение этих изменений.
Процесс вилки не передает разрешения, политики или конвейеры сборки из исходного репозитория в вилку.
В этой статье рассматриваются сведения о работе с вилками в репозиториях Git в Azure Repos, а также ссылки на содержимое GitHub, которое описывает управление вилками в репозиториях GitHub.
В этой статье раскрываются следующие темы:
- совместно использовать код в вилках.
- осуществлять выбор между ветвями и вилками;
- Включение вилок репозитория
- Создание вилки
- Клонирование вилки локально
- Отправка локальных изменений в вилку
- Создание и выполнение запроса на вытягивание
- Синхронизация вилки
Предварительные требования для доступа к Azure Repos
Репозитории должны быть включены в параметрах проекта Azure DevOps. Если концентратор Repos и связанные страницы не отображаются, см. раздел "Включение или отключение службы Azure DevOps" для повторного использования репозиториев.
Чтобы просмотреть код в частных проектах, необходимо быть членом проекта Azure DevOps с уровнем доступа "Базовый " или выше. Для общедоступных проектов каждый может просматривать код.
Если у вас нет проекта, создайте его или зарегистрируйтесь бесплатно.
Если вы не член проекта, добавьте его.
Чтобы клонировать или внести свой вклад в код для частного проекта, необходимо быть членом группы безопасности участников или иметь соответствующий набор разрешений. Для общедоступных проектов любой пользователь может клонировать и внести свой вклад в код. Дополнительные сведения см. в разделе "Что такое общедоступный проект"?
Примечание.
Для общедоступных проектов пользователи, которым предоставлен доступ заинтересованных лиц , имеют полный доступ к Azure Repos.
Репозитории должны быть включены в параметрах проекта Azure DevOps. Если концентратор Repos и связанные страницы не отображаются, см. раздел "Включение или отключение службы Azure DevOps" для повторного использования репозиториев.
Чтобы просмотреть код, необходимо быть членом проекта Azure DevOps с базовым доступом или выше. Если вы не член проекта, добавьте его.
Чтобы клонировать или внести свой вклад в код, необходимо быть членом группы безопасности участников или иметь соответствующие разрешения в проекте, который вы хотите изменить.
совместно использовать код в вилках.
Исходный репозиторий часто называется вышестоящим репозиторием. Вы можете создавать PR для слияния изменений в любом направлении: от вилки до вышестоящей или вышестоящей до вилки. Наиболее распространенное направление — от вилки к вышестоящему. Разрешения целевого репозитория, политики, сборки и рабочие элементы будут применяться к pr.
осуществлять выбор между ветвями и вилками;
Для небольшой команды разработчиков из 2–5 может потребоваться рабочий процесс вилки, так как все могут работать в ветвь компонента и политиках филиалов, могут защитить ветвь по умолчанию. Тем не менее, если ваша команда расширяет и выравливает эту структуру, они могут переключиться на рабочий процесс вилки.
Если репозиторий имеет большое количество случайных или редких фиксаций, таких как проект открытый код, рекомендуется рабочий процесс вилки. Как правило, только основные участники проекта должны иметь прямые права фиксации исходного репозитория. Другие сотрудники должны использовать рабочий процесс вилки для изоляции предлагаемых изменений до тех пор, пока основные участники не могут просмотреть свою работу.
Включение вилок репозитория
Чтобы включить вилки для репозитория Azure Repos Git, см. сведения о включении вилки.
Чтобы включить вилки для репозитория GitHub, см. статью "Управление политикой вилки для вашей организации".
Рабочий процесс создания вилки
Рабочий процесс вилки состоит из пяти шагов, описанных в следующих разделах.
- Создание вилки
- Клонирование вилки локально
- Отправка локальных изменений в вилку
- Создание и завершение pr
- Синхронизация вилки
Создание вилки
Ниже описано, как создать репозиторий Azure Repos Git.
Примечание.
Чтобы создать репозиторий в проекте Azure DevOps, необходимо иметь разрешение на создание репозитория для этого проекта. Владельцы репозитория должны рассмотреть вопрос о создании выделенного проекта для вилок и назначении разрешения на создание репозитория всем участникам. Дополнительные сведения о настройке разрешений см. в разделе "Настройка разрешений репозитория Git".
В веб-браузере перейдите в репозиторий Azure Repos Git, который вы хотите вилировать. Выберите "Файлы репозитория>", а затем в меню с многоточием выберите в меню с многоточием, чтобы открыть диалоговое окно "Вилка".
В диалоговом окне "Вилка" назовите вилку репозитория, выберите проект, в котором нужно создать вилку, выберите ветви, которые нужно включить в вилку, а затем выберите вилку. Можно указать, будет ли вилка содержать все ветви или только ветвь по умолчанию. Если репозиторий содержит несколько ветвей раздела, рассмотрите возможность включения только ветвь по умолчанию в вилку.
Сведения о том, как создать репозиторий GitHub, см. в разделе Fork a repo.
Клонирование вилки локально
После создания вилки репозитория клонируйте вилку, чтобы создать локальную копию в папке на компьютере. Вы можете клонировать из командной строки или с помощью интегрированной среды разработки, например Visual Studio. Дополнительные сведения о клонировании репозитория см. в разделе Клонирование существующего репозитория Git.
При клонировании удаленного репозитория Git назначает псевдоним origin
как сокращенный URL-адрес клонированного удаленного репозитория. Для удобства добавьте еще один псевдоним с именем upstream
вилки репозитория, который называется вышестоящим репозиторием. Ниже описано, как добавить upstream
псевдоним.
Совет
Для удобства можно использовать origin
псевдонимы вместо upstream
соответствующих URL-адресов в командах Git.
Чтобы добавить upstream
псевдоним в Visual Studio, выполните следующие действия.
Выберите "Параметры инструментов>" в строке меню, чтобы открыть окно "Параметры". Выберите "Параметры > репозитория Git для системы управления > версиями" и нажмите кнопку "Добавить", чтобы открыть диалоговое окно "Добавить удаленный".
В диалоговом окне "Добавление удаленного" добавьте новый удаленный вызов
upstream
и введите URL-адрес клона Git для вилки репозитория. Затем нажмите кнопку "Сохранить".
Отправка локальных изменений в вилку
При создании личной версии исходного репозитория (исходный репозиторий называется "upstream"). Вилки не зависят от вышестоящего, но вилки совместно использует код и сохраняет ссылку на вышестоящей версии, что позволяет выполнять дальнейшую синхронизацию. Таким образом, нет ничего, чтобы предотвратить работу непосредственно в main
ветви локального клона, а затем толкать эту работу в main
ветвь вашего вилки. Однако, как правило, лучше использовать ветвь компонента для вашей работы. С помощью ветвь компонента:
Одновременно можно поддерживать несколько независимых рабочих потоков.
Для других пользователей проще понять общую работу, так как эта работа организована в отдельные рабочие потоки по ветви.
Типичный рабочий процесс Git включает следующие действия:
Создайте локальную функцию или ветвь исправления ошибок.
Внесите изменения в новую ветвь и зафиксируйте свою работу. Как правило, при работе с функцией или исправлением ошибок люди делают несколько фиксаций.
Отправьте функцию или ветвь исправления ошибок в вилку. У вашего вилки есть псевдоним
origin
.
Сведения о отправке изменений см. в статье "Общий доступ к коду с помощью push-отправки".
Создание и выполнение запроса на вытягивание
В Azure Repos можно объединить в исходный репозиторий изменения, отправленные в вилку, :
Создайте pr для запроса проверки и утверждения изменений. Когда вы открываете PR, задайте ветвь источника PR для функции или ветвь исправлений в вилке. Целевая ветвь PR обычно
main
является ветвью вилки репозитория. Этот репозиторий называется вышестоящим репозиторием и имеет псевдонимupstream
.На следующем снимке экрана показан исходный репозиторий и ветвь и ветвь целевого репозитория, созданного в Azure Repos.
Дополнительные сведения о создании PR с помощью браузера, Visual Studio или Azure DevOps CLI см. в статье "Создание PR".
Для завершения pr все необходимые рецензенты должны утвердить изменения pr и все политики целевой ветви должны быть выполнены. При утверждении и завершении pr изменения в исходной ветви pr будут объединяться в целевую ветвь PR.
Сведения о создании и завершении запроса на вытягивание см. в статье "Создание запроса на вытягивание" и объединение запроса на вытягивание.
Синхронизация вилки
После слияния изменений из вилки в целевую ветвь вышестоящего репозитория можно извлечь из целевой ветви вышестоящего репозитория, чтобы обновить соответствующую локальную ветвь как с изменениями, так и с любыми изменениями, внесенными другими участниками. Затем вы готовы:
Создайте новую функцию или ветвь исправления ошибок из обновленной локальной ветви.
Обновите вилку путем отправки из обновленной локальной ветви
origin
в .
Как правило, целевая ветвь вышестоящего репозитория main
. Если вы не редактируете локальную main
ветвь напрямую (вы работаете в ветвь компонента), то извлечение из upstream/main
вышестоящая ветвь обновит локальную main
ветвь без конфликт слияния.