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