Partilhar via


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

Serviços de DevOps do Azure | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Use o comando TFVC folderdiff para exibir e comparar uma representação visual das diferenças entre arquivos em duas pastas do servidor, em uma pasta do servidor e uma pasta local ou em duas pastas locais.

Pré-requisitos

Para usar o folderdiff comando, você deve ter a permissão de leitura definida como Permitir. Para obter mais informações, consulte Permissões TFVC padrão.

Sintaxe

tf folderdiff [sourcePath] targetPath [/recursive] [/noprompt] [/collection:TeamProjectCollectionUrl] [/filter:filter] [/filterLocalPathsOnly] [/login:username,[password]] [/view:same,different,sourceOnly,targetOnly]

Parâmetros

Argumentos

Argumento

Descrição

<sourcePath>

O caminho de origem local ou do servidor na operação de comparação. Se esse argumento não for fornecido e targetPath for o caminho mapeado local, sourcePath será o caminho do servidor para o qual ele será mapeado.

<targetPath>

O caminho de destino local ou do servidor na operação de comparação.

<filter>

Uma lista delimitada por ponto-e-vírgula de máscaras de filtro de inclusão e exclusão para a /filter opção. O padrão é *, ou incluir todos. Consulte Comentários para obter uma descrição detalhada de filtros e máscaras.

<TeamProjectCollectionUrl>

A URL da coleção de projetos que contém os arquivos para os quais você deseja exibir e comparar as diferenças, por exemplo http://myserver:8080/tfs/DefaultCollection.

<username>

Fornece um valor para a /login opção. Você pode especificar um valor de nome de usuário como ou DOMAIN\username username.

Opções

Opção

Descrição

/recursive

Opcional. Compara totalmente as duas pastas recursivamente.

/noprompt

Opcional. É executado tf folderdiff sem exibir a saída na janela Diferença de pasta do Visual Studio. Em vez disso, a janela do prompt de comando exibe a saída.

/filter

Opcional. Especifica uma lista de máscaras de inclusão e filtro que são usadas para corresponder aos nomes de arquivos e pastas a serem comparados.

/filterLocalPathsOnly

Opcional. Especifica que apenas os caminhos locais serão filtrados, a menos que o caminho do servidor correspondente exista.

/view

Opcional. Especifica quais informações devem ser incluídas na saída usando uma lista separada por vírgulas dos seguintes valores:

  • same Exibe arquivos com o mesmo conteúdo nos diretórios de origem e de destino.

  • different Exibe arquivos com conteúdo diferente nos diretórios de origem e de destino.

  • sourceOnly Exibe arquivos que existem somente no diretório de origem.

  • targetOnly Exibe arquivos que existem somente no diretório de destino.

A predefinição é different,sourceOnly,targetOnly.

/collection

Especifica a coleção de projetos.

/login

Especifica o nome de usuário e a senha para autenticar o usuário com o Azure DevOps.

Observações

A janela do prompt de comando exibirá a saída se você especificar /noprompt. Caso contrário, a janela Diferença de pastas do Visual Studio exibirá a saída.

Quando o sistema compara a pasta mapeada local com a pasta do servidor para a qual está mapeada, a saída na janela Diferença de pasta inclui uma lista de alterações pendentes. Além disso, a saída na janela Diferença de pasta informa se a pasta local contém ou não a cópia mais recente.

A saída exibida na janela do prompt de comando lista todos os arquivos nas pastas nas cinco seções a seguir:

  • Itens que existem apenas na pasta do servidor.
  • Itens que existem apenas na pasta local.
  • Itens que têm conteúdos diferentes.
  • Itens com conteúdo idêntico. Você deve especificar o same argumento com a /view opção.
  • Resumo.

Filtros de ficheiros e pastas

Um filtro é uma lista ordenada de máscaras de nome usadas para corresponder ao nome de arquivos e pastas a serem comparados. As máscaras podem conter o caractere curinga de ponto ? de interrogação para corresponder exatamente a um caractere e o caractere curinga de asterisco * para corresponder a zero ou mais caracteres.

Delimitar as máscaras em um filtro usando ponto-e-vírgula ;. As máscaras de pasta devem terminar em uma barra \invertida. Para especificar uma máscara de exclusão, prefixe a máscara com um ponto !de exclamação.

O filtro aplica-se aos nomes de ficheiros e pastas utilizando as seguintes regras:

  • Quando um filtro especifica máscaras de arquivo e pasta, as máscaras de arquivo e pasta são separadas em uma lista de máscaras de arquivo e uma lista de máscaras de pasta. As máscaras de ficheiro aplicam-se apenas a nomes de ficheiros. As máscaras de pasta aplicam-se apenas a nomes de pastas.

  • Para corresponder ao nome de um arquivo ou pasta, o comando compara o nome a cada máscara no filtro na ordem em que foi especificado. Assim que o nome corresponde a uma máscara, o nome é considerado uma correspondência.

  • Se as máscaras de arquivo no filtro contiverem uma máscara de inclusão, os arquivos que não corresponderem a nenhuma das máscaras de arquivo serão excluídos.

  • Se as máscaras de arquivo no filtro contiverem apenas máscaras de exclusão, os arquivos que não corresponderem a nenhuma das máscaras de arquivo serão incluídos.

  • Se as máscaras de pasta no filtro contiverem uma máscara de inclusão, as pastas que não corresponderem a nenhuma das máscaras de pasta serão excluídas.

  • Se as máscaras de pasta no filtro contiverem apenas máscaras de exclusão, as pastas que não corresponderem a nenhuma das máscaras de pasta serão incluídas.

A tabela a seguir lista exemplos de máscara de nome de filtro.

Máscara de nome Descrição
*.cs Corresponde a todos os arquivos C#.
My*.bmp Corresponde a todos os arquivos bitmap que começam com My.
!*.exe Exclui todos os arquivos executáveis.
!objd\ Exclui todas as pastas objd .

A tabela a seguir lista exemplos de filtro.

Filtro Descrição
*.cs;!objd\;!obj\;!bin\ Corresponde a todos os arquivos C#, exceto aqueles nas pastas objd, obj ou bin.
!*.resx;!*.ini;!resources\;!*junk*\ Exclui todos os arquivos .resx e .ini , todos os arquivos na pasta de recursos e todos os arquivos em qualquer pasta que tenha um nome que inclua a palavra lixo.

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

Exemplos

O exemplo a seguir compara os arquivos na pasta do servidor e uma pasta local, organiza os arquivos na pasta local recursivamente e exibe a saída na janela do prompt de comando.

tf folderdiff $/<serverFolder> F:\<localFolder> /recursive /noprompt

Próximos passos