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


Команда Branch

Команда branch копирует элемент или набор элементов (включая метаданные и журнал управления версиями) из одного расположения в другое расположение на сервере Team Foundation (подсистема контроля версий) и в локальную рабочую область.

Примечание

Результаты данной команды не отображаются на сервере Team Foundation (подсистема контроля версий) до тех пор, пока не будет выполнена операция возврата.Дополнительные сведения см. в разделе Возврат ожидающих изменений.

Необходимые разрешения

Для использования команды branch необходимо иметь разрешение Чтение для исходного элемента и разрешения Извлечение и Слияние со значениями Разрешить для конечной папки. Дополнительные сведения см. в разделе Разрешения Team Foundation Server.

tf branch olditem newitem [/version:versionspec] [/noget] [/lock:(none|checkin|checkout)] [/noprompt] [/silent] [/checkin] [/comment:("comment"|@commentfile)] [/author:authorname] [/login:username, [password]]

Параметры

Аргумент

Описание

olditem

Задает имя исходного файла или папки, ветвление которых выполняется. olditem может также содержать сведения о версии в формате item;version.

newitem

Задает имя конечного файла или папки либо конечной родительской папки. Если элемент newitem уже существует и является папкой сервера Team Foundation (подсистема контроля версий), Team Foundation создаст в ней ответвленные элементы. В противном случае newitem задает имя конечного фала или папки. Если конечная папка уже существует, во время операции возврата могут возникнуть конфликты.

versionspec

Предоставляет значение для параметра /version. Дополнительные сведения о том, как Team Foundation выполняет анализ спецификаций версий для определения элементов, находящихся в области его действия, см. в разделе Синтаксис командной строки (управление версиями).

comment

Предоставляет комментарий о ветвлении.

@commentfile

Задает путь к файлу на диске, содержащему комментарий для ветвления.

authorname

Предоставляемое пользователем значение параметра /author.

username

Предоставляет значение для параметра /login. Можно задать значение для имени пользователя как ДОМЕН\имя_пользователя или как имя_пользователя.

Параметр

Описание

/version

Версия элемента, ветвь которого требуется создать. Возможны следующие варианты указания версии.

  • Дата/время (D10/20/2005)

  • Номер набора изменений (C1256)

  • Метка (Lmylabel)

  • Последняя версия (T)

  • Рабочая область (Wworkspacename)

Если версия не указана, Team Foundation использует следующую логику для определения версии элемента, которая будет скопирована в новую ветвь.

  • Если указан путь к серверу Team Foundation (подсистема контроля версий), то Team Foundation выполняет ветвление элемента в последней версии на сервере Team Foundation (подсистема контроля версий). Например, tf branch $/projects/help.cs использует версию сервера.

  • Если указан локальный путь для источника, Team Foundation использует версию локальной рабочей области для создания новой ветви. Например, tf branch C:\314.cs использует локальную версию рабочей области.

При ветвлении файла, версия рабочей области которого более ранняя, чем последняя версия сервера Team Foundation (подсистема контроля версий), операция выполняется в ранней версии.

/lock

Запрещает другим пользователям возвращать или извлекать элементы до тех пор, пока не будет возвращена отложенная ветвь и связанные изменения. Дополнительные сведения см. в разделе Основные сведения о типах блокировки.

Параметры блокировки

  • Нет

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

  • Checkin

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

  • Checkout

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

/noget

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

ПримечаниеПримечание
Чтобы запретить извлечение элементов, например содержимого папки /images, в рабочую область во время выполнения рекурсивных операций Get и Get Latest, замаскируйте папку рабочей области.Дополнительные сведения см. в разделе Команда Workfold.

/noprompt

Отменяет отображение запросов на ввод данных пользователем.

/silent

Подразумевает /noget и указывает, что вывод не записываются в окно командной строки при создании ветви.

/checkin

Создает и возвращает ветви на сервер за одну операцию. Этот параметр не приводит к созданию каких-либо ожидающих изменений в локальной рабочей области.

/comment

Добавляет комментарий в новую ветвь. Данный параметр используется только с параметром /checkin.

/author

Определяет автора новой ветви. Данный параметр используется только с параметром /checkin.

Заметки

Если указан локальный путь, например c:\00101, но не указана версия, Team Foundation в качестве основы для создания новой ветви будет использовать локальную версию рабочей области.

Однако, если указан путь к серверу, например "$/00101/*.cs", но не указана версия, Team Foundation в качестве основы для создания новой ветви будет использовать последнюю версию сервера Team Foundation (подсистема контроля версий).

Дополнительные сведения о поиске программы командной строки tf см. в разделе Команды служебной программы командной строки "tf".

Примеры

В следующем примере создается файл ветви, содержащий последнюю версию файла "314.cs" из рабочей области, ему присваивается имя "314_branch", и он сохраняется в текущем каталоге на диске и в папке сервера Team Foundation (подсистема контроля версий), с которой он сопоставлен.

c:\projects>tf branch 314.cs 314_branch

В следующем примере все файлы без отложенных изменений копируются в рабочую область версии файла "314.cs" из ее текущей папки сервера Team Foundation (подсистема контроля версий) в папку сервера Team Foundation (подсистема контроля версий) "testdata" и из текущего каталога на диске в рабочую папку, сопоставленную с папкой сервера Team Foundation (подсистема контроля версий) "testdata".

c:\projects>tf branch C:\314.cs $/testdata

В следующем примере все файлы без отложенных изменений копируются в текущую версию рабочей области папки "testfiles", а файлы, содержащиеся в ней для всех элементов, копируются из текущей папки сервера Team Foundation (подсистема контроля версий) в папку сервера Team Foundation (подсистема контроля версий) "testfiles_branch" и из папки c:\testfiles в локальную папку, сопоставленную с папкой сервера Team Foundation (подсистема контроля версий) "testfiles_branch".

c:\projects>tf branch C:\testfiles $/testfiles_branch

В следующем примере создается ветвь файла "314.cs" в том виде, как она существовала в наборе изменений №4 для файла. В рабочей папке на диске, как и на сервере Team Foundation (подсистема контроля версий), создается файл ветви с именем "csharp_branch".

c:\projects>tf branch C:\314.cs;C4 csharp_branch

В следующем примере создается новая ветвь файла 314.cs, как это было сделано 12-12-03. В рабочей папке на диске и на сервере Team Foundation (подсистема контроля версий) создается файл ветви с именем "314_branch".

c:\projects>tf branch 314.cs;D12/12/03 314_branch

В следующем примере выполняется разветвление версии файла "314.cs", к которой была применена подпись "Beta1", присвоение ей имени "Beta1branch" и ее сохранение в текущий каталог на диске и в папку сервера Team Foundation (подсистема контроля версий), сопоставленной с текущим каталогом.

c:\projects>tf branch 314.cs;LBeta1 314_Beta1branch

См. также

Задачи

Ветвление папок и файлов

Ссылки

Команда Branches

Команда merge

Основные понятия

Работа с наборами изменений

Другие ресурсы

Команды служебной программы командной строки "tf"