Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Visual Studio 2019 | Visual Studio 2022
Для выполнения следующих целей можно использовать ветви:
- Управление параллельной работой несколькими командами в одной базе кода.
- Изоляция рисков, введенных различными наборами изменений в базе кода.
- Снимайте моментальные снимки и поддерживайте последующие изолированные изменения (например, для создания ветви выпуска).
Например, на следующем рисунке показана структура филиала, разработанная компанией DinnerNow для удовлетворения своих бизнес-потребностей.
Команда компонентов A и команда компонентов B каждая из них выполняет свою работу в отдельных филиалах. Когда команды готовы интегрировать свою работу, они объединяют ветви в ветвь разработки. Когда сборки из ветви разработки стабильны и готовы к тестированию, команды объединяют ветвь Dev в ветвь Test.
По мере выпуска каждой версии основная ветка разветвляется в новую версию, например, ветку Version1 и ветку Version2. Следуя этой стратегии, компания может улучшить или исправить каждую последнюю версию продукта отдельно при необходимости.
Вы можете выполнить операцию ветвления с помощью средства управления исходным кодом Visual Studio как показано в этой статье, или branch команды в командной строке. Дополнительные сведения см. в разделе "Branch Command".
Подсказка
Ветвление — это важный и мощный способ создания параллельных версий ваших файлов. Однако использование ветвей может добавить сложность и стоимость проекта. Например, при слиянии двух ветвей может потребоваться устранить конфликты.
Прежде чем создавать ветвь, следует подумать, не лучше ли удовлетворить ваши потребности, применив метку. Применив метку, вы можете быстро и легко создать моментальный снимок состояния файлов, чтобы затем можно было позже получить или создать файлы в этом состоянии. Дополнительные сведения см. в разделе "Использование меток для создания моментального снимка файлов".
Предпосылки
| Категория | Требования |
|---|---|
| Разрешения | — Чтобы преобразовать папку в ветвь: разрешение на управление ветвью должно быть установлено на «Allow». — Для ветвления ветви: разрешение на управление ветвью установлено на Разрешить для путей к исходной и целевой ветвям. - Разрешение на слияние для пути целевой ветви установлено на Allow. — Для ветвления папки или файла: проверьте разрешение и разрешение слияния для целевого пути, заданного для параметра Allow. |
Дополнительные сведения см. в разделе "Разрешения TFVC по умолчанию".
Преобразование папки в ветвь
Ветви отличаются от папок. На следующем рисунке показан верхний уровень структуры папок DinnerNow в обозревателе управления версиями Visual Studio.
Как показано на рисунке, можно по-прежнему использовать папки для упорядочивания ветвей в иерархии управления версиями проекта. Однако папки и ветви имеют разный внешний вид и различные возможности. Щелкнув правой кнопкой мыши папку или ветвь, выберите "Дополнительные>свойства", отображаются различные сведения и различные функции.
При выполнении операций с ветвями, они обладают важными преимуществами по сравнению с папками. Ветви поддерживают функции управления версиями, обеспечивающие дополнительную видимость структуры ветви и место объединения наборов изменений. Хотя вы по-прежнему можете создавать ветки и объединять между папками, рекомендуется для вашей команды создавать ветки и выполнять слияние только между ветвями. В следующей процедуре объясняется, как преобразовать папку в ветвь.
Это важно
Убедитесь, что на сервере существует папка, которую требуется преобразовать. Если значок
отображается рядом с папкой в обозревателе управляемых исходных кодов, щелкните правой кнопкой мыши папку и выберите Отправить ожидающие изменения.
В Source Control Explorer щелкните правой кнопкой мыши папку, которую нужно преобразовать, и выберите Ветвление и слияние>Преобразовать в ветвь.
В диалоговом окне "Преобразование папки в ветвь ":
- В поле "Владелец" при необходимости введите имя пользователя, которому принадлежит эта ветвь. Это поле предназначено только для сведений и не предоставляет разрешений.
- В поле "Описание" при необходимости введите сведения, чтобы помочь другим участникам команды использовать эту ветвь или понять ее назначение.
- Если вы преобразуете уже ветвленную папку, установите флажок Рекурсивно выполнить это преобразование для всех ветвенных дочерних папок . Этот параметр преобразует все папки, которые ответвлялись от этой папки, в ответвления.
Нажмите кнопку "Преобразовать".
Это важно
Вы не можете вложить ветви. Поэтому вы не можете преобразовать папку в ветвь, если она либо содержит ветвь, либо содержится в ветви. Например, на следующем рисунке показано, что ни родительский, ни дочерний элемент ветви FeatureTeamA не могут быть преобразованы в ветвь.
После преобразования папки в ветвь ее можно преобразовать обратно в папку, если команда решит изменить структуру ветви.
Преобразование ветви в папку
- В обозревателе управления версиями выберите ветвь, которую требуется преобразовать.
- В меню «Файл Visual Studio» выберите «Система управления версиями>Ветвление и объединение>Преобразовать в папку, а затем выберите «Да».
Создать ветку
После преобразования папки в ветвь можно создать другие ветви из этой ветви. В следующей процедуре показано, как использовать Visual Studio для ветвления ветви. Чтобы выполнить эту задачу в командной строке, ознакомьтесь с командой Branch.
В обозревателе управления версиями щелкните правой кнопкой мыши по ветви, которую вы хотите создать, и выберите Ветвление и Слияние>Создать ветвь.
В диалоговом окне
« Имя ветви », в разделе «Ветвь из версии» , при необходимости раскройте и выберите опцию из списка«По» .- Последняя версия создает ветвь для последней версии в элементе управления версиями.
- Набор изменений позволяет ввести номер набора изменений в поле " Набор изменений" или выбрать многоточие ... для открытия диалогового окна "Поиск наборов изменений ". Дополнительные сведения см. в разделе "Поиск и просмотр наборов изменений".
- Дата позволяет ввести или выбрать дату в поле "Дата ".
- Метка позволяет ввести или найти метку. Дополнительные сведения см. в разделе "Использование меток для создания моментального снимка файлов".
- Версия рабочей области позволяет создать ветвь для версии в другой рабочей области.
В разделе "Имя целевой ветви" укажите путь новой ветви или перейдите к нему и выберите его.
Выберите ветвь. Эта ветвь создается и отображается в Проводнике системы управления исходным кодом.
Замечание
В отличие от большинства операций управления версиями, эта операция не создает ожидающие изменения. Скорее, операция завершается немедленно, и ее невозможно отменить.
Создать ветку для папки или файла
Хотя вы можете ветвить папку или файл напрямую, рекомендуется избежать этого. Если вы ветвите файл или папку напрямую, вы не сможете просматривать иерархию ветвей или отслеживать наборы изменений. Рекомендуется использовать ветвление и слияние только между ветвями, как описано ранее в этой статье.
Но если у вас есть особая необходимость создать ответвление папки или файла, можно воспользоваться следующей процедурой. Чтобы выполнить эту задачу в командной строке, ознакомьтесь с командой Branch.
В Обозревателе управления версиями щелкните правой кнопкой мыши папку или файл, который вы хотите разветвить, и выберите Ветвление и слияние>Ветвить.
В диалоговом окне "Ветвь " в поле "Целевой объект" измените расположение и имя новой ветви или выберите " Обзор ", чтобы перейти к целевому объекту и выбрать его.
В разделе Ветвь из версии при необходимости раскройте выпадающий список и выберите вариант из списка По.
- Последняя версия создает ветвь для последней версии в элементе управления версиями.
- Набор изменений позволяет ввести номер набора изменений в поле " Набор изменений" или выбрать многоточие ... для открытия диалогового окна "Поиск наборов изменений ". Дополнительные сведения см. в разделе "Поиск и просмотр наборов изменений".
- Дата позволяет ввести или выбрать дату в поле "Дата ".
- Метка позволяет ввести или найти метку. Дополнительные сведения см. в разделе "Использование меток для создания моментального снимка файлов".
- Версия рабочей области позволяет создать ветвь для версии в другой рабочей области.
При необходимости выберите "Скачать целевой элемент в рабочую область ", чтобы создать копию элемента, управляемого версией, в локальной рабочей области. Снимите флажок, если вам не нужна локальная копия, и вы хотите повысить производительность, не скачав много элементов на компьютер.
Нажмите ОК. Эта ветвь создается и отображается в Проводнике системы управления исходным кодом.
Замечание
Откроется окно "Обзор папки" , если выбран параметр "Скачать целевой элемент" в рабочую область , а указанная локальная папка не сопоставлена в текущей рабочей области. Найдите папку или выберите "Создать папку", укажите папку для синхронизации с элементами, управляемыми версией, и нажмите кнопку "ОК".