TFS e número da versão msbuild com o último conjunto de alterações
Pergunta
Eu quero criar um número de compilação que se parece com Major.minor.Date.LastChangeSetInTFS, o problema é como obter o número passado de alterações dos TFS. Existe alguma propriedade ou algo ??
Solução
OK, finalmente eu encontrei uma solução. Aqui é uma tarefa que irá fornecer-lhe o número mais recente de alterações e criar uma propriedade para inseri-lo em um número de informações de construção Assembléia. O principal problema foi na propriedade TfsLibraryLocation falta (sem ele, deve estar apontando para bibliotecas em GAC, mas isso não aconteceu)
<Target Name="GetVersionChangeSet">
<TfsVersion
TfsLibraryLocation="C:\Program Files\Microsoft Visual Studio 9.0\Common7\IDE\PrivateAssemblies"
LocalPath="$(SolutionRoot)">
<Output TaskParameter="Changeset" PropertyName="ChangesetNumber"/>
</TfsVersion>
<Message Text="TFS ChangeSetNumber: $(ChangesetNumber)" />
Outras dicas
De acordo com um comentário sobre desta página você pode usar a linha de comando
tf changeset /latest /i
mas não posso verificar isso da sua casa.
Desculpe, eu não posso comentar sobre a resposta mais recente.
A tarefa TfsVersion na forma que forneceu apenas dar-lhe o número mais recente de alterações na $(SolutionRoot)
.
Se você tem algo mais recente em $(SolutionRoot)\subdir
, a solução fornecida não vai funcionar, uma vez que irá dar-lhe o mais recente do $(SolutionRoot)
, não de $(SolutionRoot)\subdir
como você queria.
Eu uso o tf changeset /latest /i
e ele funciona muito bem para mim.
Confira seguintes projetos de extensão. Você vai encontrar cerca de 5 maneiras diferentes de resolver o seu problema.
- MSBuild Extensão Pacote - mantido ativamente, esta extensão fornece mais de 280 tarefas
- Tarefas MSBuild Comunidade Projeto - não mantido desde 2007, este conjunto de ~ 90 tarefas ainda tem alguns tarefas exclusivas, ou seja, o flat-baseado em arquivo de tarefa Versão
- SDC Tasks Biblioteca - não mantido desde Ago 2008, esta extensão foram absorvidos MSBuild Pacote de Extensão . Se há algo que você não pode encontrar em MSBuild Pacote de Extensão, verificar este para fora, com seu portfólio de mais de 300 tarefas chances são, ele pode ter o que você precisa.