Compartilhar via


Comando Branch (Controle de Versão do Team Foundation)

Azure DevOps Services | Servidor Azure DevOps | Azure DevOps Server 2022

Visual Studio 2019 | Visual Studio 2022

O comando branch TFVC copia um item ou conjunto de itens, incluindo metadados e histórico de controle de versão, de um local para outro no servidor do Azure DevOps e no workspace local.

Nota

Os resultados desse comando não são refletidos no servidor do Azure DevOps até que você execute uma operação de check-in. Para obter mais informações, consulte Verifique seu trabalho node base de código da equipe.

Pré-requisitos

Categoria Requirements
Permissões Permissão de leitura para o item de origem e permissões de check-out e mesclagem para a pasta de destino definida como Permitir.

Para obter mais informações, consulte permissões TFVC padrão.

Sintaxe

tf branch olditem newitem [/version:versionspec] [/noget] [/lock:(none|checkin|checkout)] [/noprompt] [/silent] [/checkin] [/comment:("comment"|@commentfile)] [/author:authorname] [/login:username, [password]] [/recursive]

Parâmetros

Argumento

de argumento descrição
<olditem> Especifica o nome do arquivo de origem ou pasta que está sendo ramificada. O <olditem> também pode conter informações de versão no formato item;version.
<newitem> Especifica o nome do arquivo de destino ou pasta ou a pasta pai do destino. Se <*newitem> já existir e for uma pasta do Servidor do Azure DevOps, o TFVC criará os itens ramificados dentro dela. Caso contrário, <newitem> especifica o nome do arquivo ou pasta de destino. Conflitos podem ocorrer durante o check-in se o destino já existir.
<versionspec> Fornece um valor para a opção /version. Para obter mais informações sobre como o TFVC analisa uma especificação de versão para determinar quais itens estão dentro de seu escopo, consulte Usar comandos de controle de versão do Team Foundation.
<comment> Fornece um comentário sobre o branch.
@<commentfile> Especifica o caminho de um arquivo que contém o comentário usado para o branch.
<authorname> O valor fornecido pelo usuário para a opção /author.
<username> Fornece um valor para a opção /login. Você pode especificar um valor de nome de usuário como DOMAIN\username ou <username>.

Opção

opção

descrição

/version

A versão do item na qual você deseja criar o branch. Você pode especificar uma versão por:

  • Data/hora (D10/20/2005)
  • Número do conjunto de alterações (C1256)
  • Rótulo (Lmylabel)
  • Versão mais recente (T)
  • Workspace (Wworkspacename)

Se nenhuma versão for fornecida, o TFVC usará a seguinte lógica para decidir qual versão do item copiar para o novo branch:

  • Se um caminho do Servidor do Azure DevOps for especificado, o TFVC ramificará o item na versão mais recente do Servidor do Azure DevOps. Por exemplo, tf branch $/projects/help.cs usa a versão do servidor.
  • Se um caminho local for especificado para a origem, o TFVC usará a versão local do workspace para criar o novo branch. Por exemplo, tf branch C:\314.cs usa a versão do workspace local.

Se você ramificar um arquivo cuja versão do workspace é mais antiga que a versão mais recente no servidor do Azure DevOps, o arquivo será ramificado na versão mais antiga.

/lock

Impede que outros usuários faça check-in ou check-out de itens até que você faça check-in em seu branch pendente e alterações associadas. Para obter mais informações, consulte Understanding Lock Types.

Opções de bloqueio:

  • none
    Inadimplência. Nenhum bloqueio é aplicado. Se existir um bloqueio no arquivo para o qual você está criando um branch, essa opção o removerá.
  • checkin
    Outros usuários podem fazer check-out dos itens especificados, mas não podem fazer check-in de revisões para arquivos bloqueados até que você libere o bloqueio executando um check-in. Se outros usuários bloquearem qualquer um dos itens especificados, a operação de bloqueio falhará.
  • checkout
    Impede que outros usuários faça check-in ou faça check-out de qualquer um dos itens especificados até que você libere o bloqueio executando um check-in. Se outros usuários bloquearem qualquer um dos itens especificados, a operação de bloqueio falhará.

/noget

Se essa opção for especificada, cópias locais dos arquivos e pastas no novo branch não serão criadas no workspace local. No entanto, as cópias locais serão recuperadas no workspace na próxima vez que você executar uma operação de obtenção recursiva.

Nota

Você pode impedir que itens, como o conteúdo de uma pasta de /imagens, sejam recuperados para seu workspace durante a obtenção recursiva e obtenha as operações mais recentes ocultando uma pasta de workspace. Para obter mais informações, consulte comando workfold .

/noprompt

Suprime qualquer solicitação de entrada de você.

/silent

Implica /nogete especifica que a saída não é gravada na janela do prompt de comando quando você cria um branch.

/checkin

Cria e verifica no branch para o servidor em uma operação. Essa opção não cria alterações pendentes no workspace local.

/comment

Adiciona um comentário ao novo branch. Essa opção é usada apenas com a opção /checkin.

/author

Identifica o autor do novo branch. Essa opção é usada apenas com a opção /checkin.

/recursive

Para pastas, ramificar todos os arquivos dentro também.

Observações

Se você especificar um caminho local como c:\00101 mas não especificar um <versionspec>, o TFVC usará a versão do workspace local como base para criar o novo branch.

No entanto, se você especificar um caminho de servidor como $/00101/*.cs e não especificar um <versionspec>, o TFVC usará a versão mais recente do Azure DevOps Server como base para criar o novo branch.

Para obter mais informações sobre como usar o utilitário de linha de comando tf, consulte Usar comandos de controle de versão do Team Foundation.

Exemplos

Os exemplos a seguir pressupõem que c:\projects mapeia para a pasta principal no workspace.

O exemplo a seguir cria um arquivo de branch que contém a versão mais recente do workspace do 314.cs, nomeia-o 314_branche salva-o no diretório atual em disco e também na pasta do Servidor de DevOps do Azure para a qual ele mapeia.

c:\projects>tf branch 314.cs 314_branch

O exemplo a seguir copia todos os arquivos sem edições pendentes na versão do workspace do 314.cs da pasta atual do Servidor do Azure DevOps para a pasta testdata pasta do Servidor do Azure DevOps e do diretório atual em disco para a pasta de trabalho que mapeia para a pasta testdata servidor do Azure DevOps.

c:\projects>tf branch C:\314.cs $/testdata

O exemplo a seguir copia todos os arquivos sem edições pendentes na versão atual do workspace da pasta testfiles e os arquivos que ele contém para todos os itens da pasta atual do Servidor do Azure DevOps na pasta testfiles_branch servidor do Azure DevOps e de c:\testfiles na pasta local mapeada para a pasta testfiles_branch servidor do Azure DevOps.

c:\projects>tf branch C:\testfiles $/testfiles_branch

O exemplo a seguir cria um branch de 314.cs como existia no conjunto de alterações nº 4 para o arquivo. Na pasta de trabalho no disco, como no servidor do Azure DevOps, um arquivo de branch intitulado csharp_branch é criado.

c:\projects>tf branch C:\314.cs;C4 csharp_branch

O exemplo a seguir cria um novo branch de 314.cs como era em 12/12/03. Na pasta de trabalho no disco como no servidor do Azure DevOps, um arquivo de branch intitulado 314\branch é criado.

c:\projects>tf branch 314.cs;D12/12/03 314_branch

O exemplo a seguir ramifica a versão de 314.cs à qual o rótulo Beta1 foi aplicado, nomeia-o Beta1branch e salva-o no diretório atual no disco, além da pasta do Servidor do Azure DevOps para a qual o diretório atual mapeia.

c:\projects>tf branch 314.cs;LBeta1 314_Beta1branch