Em um dos clientes da Lambda3 que estou trabalhando, surgiu a seguinte necessidade de um dos desenvolvedores que trabalham na equipe:

(…) Tem alguma maneira no TFS para executar o download somente dos arquivos contidos em um único Changeset?

Mediante a esse questionamento, surgiu a oportunidade de escrever esse post. Então vamos à solução 🙂

Baixando arquivos de um Changeset específico

Olhando rapidamente para o Team Explorer, a resposta para essa questão parece óbvia: sabendo o número do Changeset, é só executar o comando “Get Specific Version” escolher a opção “Changeset” e digitar o número. Certa a resposta? Não 🙁

Lembro mais uma vez que o cliente solicitou apenas os arquivos de um Changeset específico. Na resposta acima, iremos executar o “Get Specific Version” até aquele número de Changeset, ou seja, todos os arquivos e pastas da respectiva estrutura de Source Control também serão baixados. E agora?

Para resolvermos esse problema utilizaremos a linha de comando tfpt, conhecida por todos como o plug-in Microsoft Visual Studio Team Foundation Server 2013 Power Tools.

Dentre as opções oferecidas pelo tfpt, utilizaremos a opção getcs conforme mostrado abaixo:

Comando tfpt getcs

Dentre as opções do comando, utilizaremos o parâmetro “/changeset:changesetnum”, conforme demonstrado abaixo:

tfpt getcs /changeset:12345

A instrução deverá ser executada no prompt de comando em uma pasta que deverá estar mapeada como WorkSpace do seu Source Control, ou seja, digamos que você baixe todo o seu código fonte em “C:\Projetos”, isso significa dizer que o comando tfpt deverá ser executado a partir desse caminho.

Finalizada a execução do comando, você só terá na sua pasta os respectivos arquivos do Changeset solicitado.

Espero que tenham gostado.

Abraços e até o próximo post.

Vinicius Moura.