По умолчанию, когда выполняется сборка в очереди, MSBuild вызывает задачу CoreLabel, чтобы пометить исходные файлы, которые были включены в сборку - как я могу контролировать, где эта метка создается?
В принципе, я хотел бы, чтобы ярлык создавался в корне Team Project (т.е. папка «Клиент» ниже), однако, похоже, что ярлык создан в корне рабочая папка для рабочих пространств (т. е. Project 1 \ Development \ Sources):
$ <-- Project Collection
+- Client <-- Team Project
+- Project 1 <-- Project
+- Deployments <-- Assets for a deployment
+- 1.0.0.0
+- 1.1.0.0
+- Development <-- Development Branch
+- Source <-- Dev Build Definition working folder mapped here.
+- Environment <-- Scripts, etc. for deployments.
+- Main <-- Main Branch
+- Source <-- Release Build Definition working folder mapped here.
В определениях сборки мы указали «Рабочую папку» в рабочей области на уровне папки «Исходный» для разработки или Main в зависимости от типа сборки.
Глядя на журналы сборки, похоже, что метка должна быть создана на уровне клиента:
Task "Label" (TaskId:42)
Label TeamFoundationServerUrl="http://TFSServer:8080/tfs/DefaultCollection"
BuildUri="vstfs:///Build/Build/4538"
Name="Nightly_20110303.5"
Scope="$/Client"
Recursive=True
Comments="Version-1.0.0.0 Requested-xxx Get-T Branch-Development"
Version="WCATQCDEV-BLD_35_8"
Child="Replace"
Files="$/" (TaskId:42)
Label Nightly_20110303.5@$/Client (version WCATQCDEV-BLD_35_8) was successfully created. (TaskId:42)
Однако, даже если для Files
установлено значение $/
, метка все еще создается на уровне рабочей папки. Согласно документации, параметр Files
должен указывать, какие файлы включены в метку, но, очевидно, он работает не совсем так, как нам хотелось бы.
Я успешно изменил комментарий, созданный с помощью задачи BeforeLabel
, установив свойство LabelComment
, однако попытка установить для свойства LabelFiles
в той же задаче что-то вроде $/Client
не похоже чтобы повлиять на местоположение, в котором создается метка, и, похоже, в конечном итоге искажается до %26/Client
в журнале при вызове метода метки.