Referência de comandos de controle de versão do Team Foundation
Você pode usar os comandos de controle de versão para executar praticamente todas as tarefas no Visual Studio e vários outras tarefas que não podem ser executadas nele. Você pode usar a ferramenta tf.exe para executar comandos de controle de versão em um prompt de comando ou de um script.
O que você deseja fazer?
Executar um comando
Configurar seu computador de desenvolvimento
Desenvolver seu aplicativo
Suspender seu trabalho
Contribuir com seu trabalho
Gerenciar arquivos e solucionar problemas
Isolar riscos
Compreender a sintaxe dos comandos
Especificar os itens afetados por um comando
Usar um argumento itemspec para especificar itens afetados
Usar um argumento versionspec para especificar as versões afetadas dos itens
Usar opções para modificar o funcionamento do comando
Usar a opção /noprompt para suprimir solicitações de entrada de dados e redirecionar dados de saída para a janela do prompt de comando
Usar a opção /login para especificar credenciais ao executar um comando
Usar a opção /lock para aplicar ou remover um bloqueio
Usar atalhos de opções
Compreender os códigos de saída
Executar um comando
Para iniciar o prompt de comando do Visual Studio, pressione o botão Iniciar do Windows, clique em Microsoft Visual Studio 2012, clique em Visual Studio Tools e escolha um dos atalhos do prompt de comando.
Na maioria dos casos, você executa o comando de controle de versões no contexto de um diretório mapeado no espaço de trabalho. Por exemplo, $/SiteApp/Main/ está mapeado para c:\code\SiteApp\Main\. Para obter a versão mais recente de todos os itens do espaço de trabalho:
c:\code\SiteApp\Main\SolutionA>tf get
Dica
No momento, não estamos republicando alguns dos tópicos.No entanto, você pode ler as versões dos tópicos para o Visual Studio 2010.
Configurar seu computador de desenvolvimento e gerenciar espaços de trabalho
Seu espaço de trabalho é uma cópia local da base de código da equipe. Como é uma cópia local presente no seu computador de desenvolvimento, você pode desenvolver e testar o código isoladamente até estar pronto para fazer check-in do seu trabalho. Veja alguns comandos que permitem gerenciar seu ambiente de trabalho:
Proxy Command (Visual Studio 2010)
WorkFold Command (Visual Studio 2010)
Workspace Command (Visual Studio 2010)
Workspaces Command (Visual Studio 2010)
Consulte também: Configurar o controle de versão do Team Foundation na sua máquina de desenvolvimento, Criar e trabalhar com espaços de trabalho
Desenvolver seu aplicativo
Use estes comandos para desenvolver seu aplicativo no controle de versões com sua equipe:
Adicionar comando
Adicionar arquivos e pastas ao controle de versões.Comando Check-out (ou Editar)
Executa check-out de um arquivo e altera o status de alteração pendente para "editar".Excluir comando (Team Foundation Version Control) (Visual Studio 2010)
Comando Obter
Baixa a versão mais recente ou a versão especificada de um ou mais arquivos ou pastas do Team Foundation Server para o ambiente de trabalho.Renomear um comando (Team Foundation Version Control) (Visual Studio 2010)
Comando Status
Exibe informações sobre alterações pendentes nos arquivos e itens das pastas em um ou mais espaços de trabalho ou em um check-in particular.Comando Desfazer
Descarta uma ou mais alterações pendentes nos arquivos ou nas pastas.Undelete Command (Visual Studio 2010)
Consulte também: Desenvolver seu aplicativo no controle de verão do Team Foundation
Suspender seu trabalho
Por vários motivos, às vezes você precisa reservar alguns ou todos os seus trabalhos em andamento. Para suspender e retomar seu trabalho e gerenciar check-ins particulares, use estes comandos:
Shelve comando (Visual Studio 2010)
Shelvesets Command (Visual Studio 2010)
Comando unshelve (Visual Studio 2010)
Consulte também: Suspender o trabalho e gerenciar check-ins particulares.
Contribuir com seu trabalho
Veja como fazer check-in em seu código na base de códigos da equipe:
- Comando Check-in
Faz check-in em alterações pendentes de arquivos ou pastas no servidor.
Consulte também: Fazer check-in de seu trabalho para a base de código da equipe
Gerenciar arquivos e solucionar problemas
Visualizar e gerenciar pastas e arquivos do controle de versões
Comando de propriedades (Visual Studio 2010)
Propriedade Command (não documentada)
Dir Command (Visual Studio 2010)
Destroy Command (Visual Studio 2010)
LocalVersions Command (Visual Studio 2010)
Consulte também: Usar o Gerenciador de Controle do Código-Fonte para gerenciar arquivos sob controle de versão
Exibir e gerenciar versões de pastas
Changeset Command (Visual Studio 2010)
Comando Histórico
Exibe o histórico de revisão de um ou mais arquivos ou pastas.Label Command (Visual Studio 2010)
Labels Command (Visual Studio 2010)
Rollback Command (Visual Studio 2010)
Unlabel Command (Visual Studio 2010)
View Command (Visual Studio 2010)
Consulte também: Exibir e gerenciar versões anteriores
Comparar pastas e arquivos
Difference Command (Visual Studio 2010)
Folderdiff Command (Visual Studio 2010)
Consulte também: Exibir e gerenciar versões anteriores
Resolver conflitos de arquivos
Resolve Command (Visual Studio 2010)Consulte também: Resolver conflitos de controle de versão do Team Foundation.
Trabalhar com bloqueios de controle de versão
Lock Command (Visual Studio 2010)Consulte também: Trabalhar com bloqueios de controle de versão.
Isolar riscos
Use estes comandos para isolar riscos que usam ramificações:
Branch Command (Visual Studio 2010)
Branches Command (Visual Studio 2010)
Merge Command (Visual Studio 2010)
Merges Command (Visual Studio 2010)
Consulte também: Usar ramificações para isolar riscos no Controle de versão do Team Foundation.
Controle de versão do administrador
Use estes comandos para administrar o sistema de controle de versões:
Configure Command (Visual Studio 2010)
Permission Command (Visual Studio 2010)
Consulte também: Administrando o controle de versão Team Foundation (Visual Studio 2010).
Obter ajuda com os comandos de controle de versão
Use estes comandos para obter mais informações sobre os comandos de controle de versão:
Help Command (Visual Studio 2010)
Msdn Command (Visual Studio 2010)
Compreender a sintaxe dos comandos
A sintaxe de cada comando aparece no início de cada tópico de referência.
Argumentos necessários e opcionais
Os argumentos sem colchetes são necessários. [Brackets] indica argumentos opcionais que não são necessários para executar um comando. No entanto, alguns argumentos opcionais têm padrões que se aplicam ao comando mesmo quando você não especifica essa opção.
Argumentos exclusivos
Quando as opções estiverem separadas por uma barra vertical (|), é sinal de que você pode especificar uma das opções.
Argumentos textuais e substituíveis
Os itens em negrito são opções textuais. Os itens em itálico são argumentos que devem ser substituídos por caracteres reais a fim de executar um comando.
Atalhos e alias de comandos
Alguns comandos permitem usar atalhos. Por exemplo, você pode chamar o comando Excluir usando o atalho tf delete ou tf del.
Exemplo
Por exemplo, o comando Check-out:
tf checkout [/lock:( none|checkin|checkout)] [/recursive] itemspec [/login: username,[ password]]
Vamos revisar os argumentos desse exemplo:
itemspec: substitua esse argumento com um itemspec que especifique os itens para os quais você está fazendo check-out.
/lock:(none|checkin|checkout): você não precisa especificar a opção /lock. Quando você não a especifica, o sistema especifica /lock:none por padrão. Caso contrário, você pode especificar uma das opções de bloqueio.
Os argumentos a seguir são opcionais. Quando você não os fornece, nenhum de seus efeitos é aplicado ao comando:
/recursive: se quiser fazer check-out de diversos itens recursivamente em uma pasta, especifique essa opção textual.
/login:username,password: se quiser executar o comando como outro usuário, especifique a opção textual /login, substitua username pelo nome do usuário e, se necessário, forneça a senha.
Especificar os itens afetados por um comando
Você pode usar itemspecs e versionspecs para especificar quais itens são afetados por um comando.
Usar um argumento itemspec para especificar itens afetados
Use um itemspec (especificação de item) para especificar os itens afetados por um comando. Você pode especificar os itens em um computador cliente ou no Team Foundation Server. Você pode usar caracteres curinga como * e ?.
Argumentos itemspec de cliente
Um argumento itemspec de cliente especifica um caminho para os itens em um computador cliente, como uma pasta (por exemplo, c:\code\SiteApp\Main\SolutionA\), um arquivo (por exemplo, c:\code\SiteApp\Main\SolutionA\Project1\program.cs ou diversos arquivos (por exemplo, c:\code\SiteApp\Main\SolutionA\*.cs. Você também pode especificar caminhos UNC como \\myshare\code\SiteApp\Main.
Argumentos itemspec do servidor
Um argumento itemspec do servidor especifica um caminho para os itens no Team Foundation Server, como uma pasta (por exemplo, $/SiteApp/Main/SolutionA), um arquivo (por exemplo, $/SiteApp/Main/SolutionA/Project1/program.cs ou diversos arquivos (por exemplo, $/SiteApp/Main/SolutionA/*.cs.
Você geralmente usa esse tipo de argumento quando precisa executar um comando nos itens, e não no computador cliente. Por exemplo, se estiver trabalhando em uma máquina de desenvolvimento e precisar obter o histórico das revisões de alguns itens que constam na coleção de um projeto de equipe no qual você não trabalha:
c:\>tf history /collection:http://fabrikam-3:8080/tfs/DefaultCollection
$/SiteApp/Main/SolutionA/Project1/* /recursive
/noprompt
Diversos argumentos itemspec
Para alguns comandos, você pode especificar diversos argumentos itemspec. Por exemplo:
c:\code\SiteApp\Main\SolutionA\Project1\>tf checkout program1.cs program2.c
Faz o check-out de program.cs e program2.c.
Usar um argumento versionspec para especificar as versões afetadas dos itens
Use um versionspec (especificação de versão) para especificar as versões dos itens afetados por um comando. Para fornecer um versionspec, você pode:
Use a opção /version. Por exemplo: /version:C44.
Adicionar o versionspec a um itemspec com um ponto e vírgula. Por exemplo: program1.cs;C44.
Ao usar Comando Histórico ou Difference Command, você pode especificar diversas versões. Para separá-las, use um til (~). Por exemplo:
c:\code\SiteApp\Main\SolutionA>tf history /noprompt * /recursive /v:D4/12/2012~D4/24/2012
Use a sintaxe a seguir para especificar um versionspec.
Tipo |
Sintaxe |
Descrição |
---|---|---|
Conjunto de alterações |
[C]n |
Especifica itens com base no número do conjunto de alterações. Se o item do escopo não foi modificado no conjunto de alterações especificado, o sistema usa a versão mais recente do item ocorrida antes desse conjunto de alterações. Dica Você pode omitir o C se especificar apenas um número. Exemplos
--ou--
--ou--
Se o arquivo leiame.txt foi modificado no conjunto de alterações 8, essa versão do arquivo é obtida. Caso contrário, obtém a versão mais recente do arquivo leiame.txt antes da versão 8. |
Rotular |
Llabel |
Especifica itens aos quais label foi aplicado. Exemplos
Obtém a versão do arquivo leiame.txt com o nome de JulyHotFix.
Recupera a versão de todos os itens rotulados (e exclui os itens não rotulados) do espaço de trabalho conforme sua composição quando o conjunto de alterações LastKnownGood foi criado, por exemplo, talvez como parte de um processo de compilação automatizado. |
Data e hora |
Dyyyy-mm-ddTxx:xx —ou— Dmm/dd/yyyy —ou— Qualquer formato compatível com .NET Framework. —ou— Qualquer um dos formatos de data compatível permitido no computador local. |
Especifica o conjunto de alterações criado em uma data e hora específicas. Exemplos
Atualiza o espaço de trabalho para ficar de acordo com a base de código de 00:00 (meia-noite) de 22/03/2004.
Atualiza o espaço de trabalho para ficar de acordo com a base de códigos existente em 22/03/2004 às 9:00. Para obter mais informações sobre os formatos de data e hora permitidos pelo .NET Framework, consulte DateTime e Cadeias de caracteres de formato de data e hora padrão. |
Ambiente de trabalho (atual) |
W |
Especifica a versão no espaço de trabalho. |
Espaço de trabalho (especificado) |
Wworkspacename; workspaceowner |
Especifica a versão no espaço de trabalho especificado. Por exemplo: WResolveRIConflicts;PeterW |
Dica |
T |
Especifica a versão mais recente. |
Usar opções para modificar o funcionamento do comando
Você pode usar algumas opções comuns para modificar o funcionamento de um comando.
Usar a opção /noprompt para suprimir solicitações de entrada de dados e redirecionar dados de saída para a janela do prompt de comando
Use a opção /noprompt para omitir solicitações de entrada de dados e redirecionar dados de saída para a janela do prompt de comando. Essa opção pode ser útil quando você precisa usar comandos de controle de versão em um script porque o comando funciona sem intervenção de nenhum usuário e os dados ficam disponíveis para que o script execute operações como análise ou captura.
Quando você usa essa opção, o sistema:
Omite todas as solicitações de entrada:
As perguntas não são feitas na janela do prompt de comando. Por exemplo, quando você usa Comando Desfazer com essa opção, o sistema não solicita a confirmação para continuar e desfazer as alterações.
As caixas de diálogo e do Windows não são exibidas. Por exemplo, você pode usar essa opção com o Comando Check-in. Em vez de exibir a caixa de diálogo Fazer check-in para que você confirme as opções (quais itens devem passar pelo check-in e a quais itens de trabalho eles devem ser associados), o sistema faz o check-in sem solicitar a confirmação.
Redireciona os dados de saída para o prompt de comando. Por exemplo, você pode usar essa opção com o Comando Histórico. Os dados são exibidos na janela do prompt de comando, e não na janela Histórico.
Usar a opção /login para especificar credenciais ao executar um comando
Use a opção /login para especificar a conta de usuário do Team Foundation Server para executar um comando. Essa opção pode ser útil quando você estiver trabalhando no computador de outro membro da equipe.
Por exemplo, Júlia está trabalhando com Pedro no computador de desenvolvimento dele. Ela usa o comando Bloquear para desbloquear um arquivo que havia bloqueado antes:
c:\code\SiteApp\Main> tf lock /lock:none program.cs /login:JuliaI,JuliaPassword
Se quiser evitar que o prompt de comando exiba sua senha, ela pode inserir o comando sem a senha:
c:\code\SiteApp\Main> tf lock /lock:none program.cs /login:JuliaI
Depois de inserir esse comando, o sistema solicita que ela insira a senha em uma caixa de diálogo que mascara a entrada.
Usar a opção /lock para aplicar ou remover um bloqueio
Importante
Como prática recomendada, use a opção /lock com critério e notifique seus colegas de equipe porque você está bloqueando um item e quando você planeja remover o bloqueio.
Use a opção /lock para aplicar ou remover um bloqueio enquanto executa outro comando, como Adicionar ou Editar.
/lock:(none|checkin|checkout)
None: não há bloqueio no item. Se o bloqueio estiver ativo, ele é removido.
Checkin ou Checkout: aplica um bloqueio. Consulte Compreender tipos de bloqueio.
Dica
Em alguns casos, a operação de bloqueio pode falhar:
-
Se outros usuários tiverem bloqueado qualquer um dos itens especificados, a operação de bloqueio falhará.
-
O sistema ignora essa mudança se já houver uma alteração pendente para o item.Nesse caso, você deve usar Lock Command para alterar um bloqueio em um item.
Usar atalhos de opções
Você pode abreviar as opções a seguir.
Opção |
Alias Opcional |
---|---|
/comment |
-C |
/computer |
-M |
/delete |
-D |
/force |
-P |
/format |
-F |
/help |
-?, -H |
/lock |
-K |
/login |
-Y |
/newname |
-N |
/noprompt |
-I |
/owner |
-O |
/recursive |
-R |
/server |
-S |
/slotmode |
-X |
/template |
-T |
/user |
-U |
/version |
-V |
/workspace |
-W |
Compreender os códigos de saída
Os comandos de controle de versão mostram os seguintes códigos de saída:
Código de Saída |
Definição |
---|---|
0 |
Êxito. |
1 |
Êxito parcial. Isso significa que houve falha parcial ou total. |
2 |
Comando não reconhecido. |
100 |
Falha total. |
Por exemplo:
c:\code\SiteApp\Main\SolutionA\Project1\>tf checkout program1.cs program2.c
Se um dos arquivos para os quais você está tentando fazer check-out não existe no servidor, o sistema mostra 1 para indicar êxito parcial.