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


Объединение папок и файлов в Azure Repos

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

Visual Studio 2019 | Visual Studio 2022

По разным причинам, описанным в разделе Папки и файлы веток, многие команды разработчиков программного обеспечения работают с кодовой базой, разделённой на различные ветви в Team Foundation Version Control (TFVC). Если вы используете ветви, в конечном итоге ваша команда должна интегрировать работу, которая была завершена в разных ветвях на определенных этапах проекта. Например, когда вы будете готовы протестировать полную версию программного обеспечения, необходимо, чтобы изменения, внесенные в разные ветви групп компонентов, были объединены вместе.

В процедурах, описанных в этой статье, объясняется, как использовать графический пользовательский интерфейс Visual Studio для объединения изменений, внесенных в разные ветви. Сведения о том, как выполнять слияние в командной строке, см. в команде Merge.

Необходимые условия

Для выполнения этих процедур укажите следующие разрешения:

  • Иметь разрешение чтения для элемента в дереве источника и ваше разрешение извлечение для элемента в целевом дереве установлено в Разрешить.
  • Укажите разрешения слияния для целевого пути.
  • Если элемент в целевом дереве переименовывается, убедитесь, что разрешение Check out для исходного дерева и целевого дерева установлено на Allow.
  • Если какие-либо файлы, затронутые операцией, заблокированы, установите разрешение Блокировать на значение Разрешить.

Дополнительную информацию о разрешениях см. в разрешениях TFVC по умолчанию.

Запустите слияние из окна управления версиями

Ветви и папки отличаются. Например, на следующем рисунке показано, как ветви и папки отображаются с различными значками в обозревателе управления исходным кодом Visual Studio .

снимок экрана: значок ветви и значок папки.

Хотя вы по-прежнему можете выполнять ветвление и слияние между папками, лучшая практика для вашей команды — выполнять ветвление и слияние только между ветками. Дополнительные сведения см. в папках и файлах ветви .

Слияние ветвей, файлов и папок из обозревателя системы управления версиями

  1. В обозревателе системы управления версиями Visual Studio щелкните правой кнопкой мыши ветвь, папку или файл, которые требуется объединить, и выберите Branching and Merging>Merge.

    Вы также можете выбрать файл и затем выбрать файл>Контроль версий>Ветвление и Объединение>Объединение.

  2. В мастере слияния системы управления версиямизавершить слияние.

Начните объединение в окне "Отслеживание изменений"

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

Важный

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

Перетащите набор изменений в окно "Отслеживание набора изменений"

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

  2. Щелкните правой кнопкой мыши выбранный элемент и выберите просмотреть историю.

  3. В окне История щелкните правой кнопкой мыши набор изменений, который вы хотите просмотреть, и выберите Отслеживание набора изменений.

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

  4. Выберите Визуализируйте.

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

  6. В мастере системы управления версиями завершите слияние .

Пример. Слияние нового метода

Чтобы проиллюстрировать, как можно использовать предыдущую процедуру, рассмотрим следующий пример. Ваш товарищ по команде просит реализовать новый метод в некоторых частях кода feature2-branchA, которые они используют в коде feature2-branchB. Вы пишете код для нового метода и проверяете его в ветви feature2-branchA. Вы сообщите своему товарищу по команде, что вы проверили новый метод.

Ваш товарищ по команде находит последний исходный код, но не видит новый метод, который вы добавили в систему. Они открываютобозревателя управления версиями , просматривают окно журнала для ветви -branchA и видят, что с набором изменений 66, вы проверили новый метод. Товарищ по команде щелкает правой кнопкой мыши на наборе изменений 66 и выбирает Отслеживать набор изменений, после чего появляется следующее окно:

снимок экрана, показывающий окно

В окне отслеживания изменений ваш коллега может увидеть, что вы зафиксировали метод в наборе изменений 66и объединили его с веткой feature2 в наборе изменений 67. Но они не могут получить новый код, пока набор изменений 67 не будет объединен в ветвь feature2-branchB. Они перетащили ветвь feature2 в ветвь feature2-branchB для запуска мастера объединения системы управления версиями, который они используют для завершения слияния.

Для завершения слияния воспользуйтесь Мастером слияния в системе управления версиями.

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

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

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

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

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

    Совет

    Если это возможно, выберите Все изменения до определенной версии. Эта практика снижает риск конфликтов в будущих слияниях.

  4. Если вы выбрали Все изменения до определенной версии, появится страница Выбрать версии исходных элементов. Выберите версию элементов, которые вы хотите использовать.

    • набор изменений: слияние путем указания версии набора изменений.
    • дата: слияние путем указания версии даты.
    • Метка: объедините, указав версию метки .
    • последняя версия: Объедините, указав последнюю версию.
    • Версия рабочей области: Слияние путем указания рабочей области версии .

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

    Совет

    Вы можете нажать и удерживать клавиш и CTRL или SHIFT, а затем выбрать несколько элементов.

  5. Выберите Далее, затем на странице Выполнить операцию слияния выберите Готово.

    Генерируется одно или несколько ожидающих изменений.

  6. При необходимости используйте страницу ожидающих изменений в Team Explorer для немедленной регистрации ожидающих изменений. Чтобы открыть страницу, можно использовать представление>других окон>отложенных изменений. Дополнительные сведения см. в разделе Оформление работы в базе кода команды.

Дальнейшие действия