Команда Label (управление версиями в Team Foundation)
Добавляет или удаляет метку для версии файла или папки на сервере Team Foundation (подсистема контроля версий).
Необходимые разрешения
Для использования команды label необходимо иметь разрешение Метка с значением Разрешить. Для изменения или удаления меток, созданных другими пользователями необходимо разрешение Администрирование меток со значением Разрешить. Дополнительные сведения см. в разделе Разрешения Team Foundation Server.
tf label labelname[@scope] [/owner:ownername]
itemspec [/version:versionspec] [/comment:("comment"|@commentfile)]
[/child:(replace|merge)] [/recursive] [login:username,[password]] [/collection:TeamProjectCollectionUrl]
tf label /delete labelname[@scope]
itemspec [/login:username,[password]] [/collection:TeamProjectCollectionUrl]
Параметры
Аргумент |
Описание |
---|---|
labelname |
Определяет имя метки для добавления, изменения или удаления из указанного элемента. |
@scope |
Указывает каталог сервера Team Foundation (подсистема контроля версий), в котором имя метки является уникальным. Этот параметр позволяет создавать, управлять, извлекать и удалять одну метку или набор элементов с метками в случае, когда две метки с одинаковыми именами находятся в разных частях сервера Team Foundation (подсистема контроля версий). |
ownername |
Предоставляет параметру /owner значение, такое как "ДОМЕН\JuanGo" или просто "juango". |
itemspec |
Определяет файл или папку для вложения, переопределения или удаления метки. Дополнительные сведения о том, как Team Foundation выполняет анализ спецификаций элементов, чтобы определить, какие из них находятся в области его действия, см. в разделе Синтаксис командной строки (управление версиями).
Примечание
Можно указать более одного аргумента Itemspec.
|
versionspec |
Предоставляет параметру /version значение, например "с2". Дополнительные сведения о том, как Team Foundation выполняет анализ спецификаций версий для определения элементов, находящихся в области его действия, см. в разделе Синтаксис командной строки (управление версиями). |
comment |
Предоставляемый пользователем комментарий о метке. |
@commentfile |
Предоставляемый пользователем путь к файлу на диске, содержащему комментарий для возврата. |
username |
Предоставляет значение для параметра /login. Можно задать значение для имени пользователя как ДОМЕН\имя_пользователя или как имя_пользователя. |
TeamProjectCollectionUrl |
URL-адрес указанной коллекции командных проектов, содержащей версию файла или папки, для которой требуется присоединить метку или из которого необходимо удалить метку (например, http://myserver:8080/tfs/DefaultCollection). |
Параметр |
Описание |
---|---|
/owner |
Указывает имя владельца метки. |
/version |
Необязательный. Указывает версию файла или папки, для которой метка будет вложена, изменена или удалена. Они являются значениями набора изменений, например C93. Если versionspec не указана, по умолчанию Team Foundation использует базовую версию рабочей области. |
/comment |
Добавляет или изменяет описание или комментарий для метки. |
/child |
Определяет, как обращаться с элементами, уже имеющими метки, идентичные указанным. Replace используется для обновления версии элемента, соответствующей существующей метке. Merge используется, чтобы оставить только одну существующую метку. |
/recursive |
Помечает все элементы в каталоге, соответствующие itemspec и versionspec. Не может использоваться совместно с параметром /delete. |
/delete |
Удаляет метку. |
/login |
Задает имя пользователя и пароль для проверки подлинности пользователя с Visual Studio Team Foundation Server. |
/collection |
Указывает коллекцию командных проектов. |
Заметки
Метка может быть вложена в набор несвязанных файлов и папок на сервере Team Foundation (подсистема контроля версий). Метки упрощают их извлечение в рабочую область для осуществления разработки или построения. Вследствие этого метка похожа на набор изменений или штамп даты/времени, к которому добавляются или из которого удаляются файлы и папки или изменяются версии элементов. Метка — это спецификация версии, которая передается следующим командам Team Foundation.
Общими типами меток являются метки вех, такие как "M1", "Beta2" или "Release Candidate 0".
Метка связана с версией и добавляется только в одну версию файла или папки. Каждая версия элемента может иметь несколько меток.
Метка не поддерживается системой управления версиями, поэтому журнал меток для файла не ведется. Кроме того, операции с меткой не создают ожидающих изменений в рабочей области. При выполнении команды label обновление немедленно отражается на сервере Team Foundation (подсистема контроля версий).
Дополнительные сведения о поиске программы командной строки if см. в разделе Команды служебной программы командной строки "tf".
Перемещение и удаление меток
Для удаления метки из файла или папки используется Команда Unlabel. В качестве альтернативы для удаления метки из системы используется команда tf label /delete.
Сведения о существующей метке, включающие список элементов, в которые вложена метка, примечание, область и владельца, см. Команда Labels.
Управление перегруженными метками
Имена меток должны быть уникальными в пределах указанной области. При добавлении метки ее имя резервируется для использования в или под указанной или подразумеваемой областью. Значением по умолчанию для параметра @scope является командный проект, например "$/TeamProject1".
Если другая группа или пользователь добавляет общую метку, например "М3", к файлам системы управления версиями, находящимся в другой части сервера Team Foundation (подсистема контроля версий), метку "М3" можно применить к файлам проекта, пока корневые папки проектов находятся в разных каталогах. Например, файлы в каталогах "$/math" и "$/projects" могут иметь одинаковую метку "М3".
Для получения, удаления или других действий с элементами с меткой "М3" необходимо в параметре "@scope" для Team Foundation указать область метки.
Чтобы другие пользователи не смогли "перегрузить" метку, такую как "М3", в других частях сервера Team Foundation (подсистема контроля версий), нужно либо создать метку в корне ($/)сервера Team Foundation (подсистема контроля версий), либо изменить разрешения "Метка" для определенных папок.
Использование параметра "/Child" для предотвращения ошибок при установке меток
При выполнении команды label с уже существующим именем метки и itemspec, включающим файлы с одинаковыми метками, значение параметра /child определяет, будут ли файлы с метками обновляться новыми сведениями о редакции. Файлы будут иметь одинаковые имена меток, но разные области действия.
Например, предположим, что имеется папка с именем c:\projects, содержащая два файла, 314.cs и 271.cs. Также предположим, что версия C70 файла "314.cs" имеет метку "ready". Последней версией файла "314.cs" является "С93". Если с помощью следующей команды к последней версии папки и находящимся в ней файлам применить метку "ready", она переместится из версии "C70" файла "314.cs" в версию "C93".
tf label ready c:\projects /recursive /version:T /child:Replace
Для предотвращения перемещения существующей метки "ready" из версии "С70" в версию "С93" файла "314.cs" используется следующий синтаксис команды.
tf label ready c:\projects /recursive /version:T /child:Merge
При указании для параметра "/child" значения Merge уже имеющиеся экземпляры метки останутся в единственном числе.
Примечание
В следующих двух примерах "T" используется для "Tip" для получения последней версии versionspec.
Примеры
В следующем примере метка "goodbuild" добавляется в версию рабочей области папки "docs" и файлов и папок, которые в ней находятся.
c:\projects>tf label goodbuild docs /recursive
В следующем примере метка "goodbuild" добавляется в папку "docs", но не в находящиеся в ней файлы и папки.
c:\projects>tf label goodbuild docs
В следующем примере метка "goodbuild" добавляется в версию 3 файла "314.cs" на сервере Team Foundation (подсистема контроля версий).
c:\projects>tf label goodbuild /version:3 $/src/314.cs
В следующем примере метка "badbuild" удаляется из всех элементов на сервере Team Foundation (подсистема контроля версий).
c:\projects>tf label /delete badbuild
В следующем примере параметр области используется для применения метки к файлу "314.cs".
c:\projects>tf label goodbuild@$/TeamProject1 314.cs
См. также
Ссылки
Синтаксис командной строки (управление версиями)
Основные понятия
Использование меток для создания снимков файлов
Использование меток для создания снимков файлов