Partager via


Commande Folderdiff (Team Foundation Version Control)

Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019

Visual Studio 2019 | Visual Studio 2022

Utilisez la commande TFVC folderdiff pour afficher et comparer une représentation visuelle des différences entre les fichiers dans deux dossiers serveur, dans un dossier serveur et un dossier local, ou dans deux dossiers locaux.

Conditions préalables

Pour utiliser la commande folderdiff, définissez l’autorisation Lecture sur Autoriser. Pour plus d’informations, consultez autorisations TFVC par défaut.

Syntaxe

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

Paramètres

Arguments

argument

Description

<sourcePath>

Chemin d’accès source local ou serveur dans l’opération de comparaison. Si cet argument n’est pas fourni et targetPath est le chemin mappé local, sourcePath est le chemin d’accès du serveur auquel il est mappé.

<targetPath>

Chemin cible local ou serveur dans l’opération de comparaison.

<filter>

Liste délimitée par des points-virgules de masques de filtre d’inclusion et d’exclusion pour l’option /filter. La valeur par défaut est *ou inclut tout. Consultez Remarques pour obtenir une description détaillée des filtres et des masques.

<TeamProjectCollectionUrl>

URL de la collection de projets qui contient les fichiers pour lesquels vous souhaitez afficher et comparer les différences, par exemple http://myserver:8080/tfs/DefaultCollection.

<username>

Fournit une valeur à l’option /login. Vous pouvez spécifier une valeur de nom d’utilisateur comme DOMAIN\username ou username.

Options

option

Description

/recursive

Optionnel. Compare entièrement les deux dossiers de manière récursive.

/noprompt

Optionnel. Exécute sans afficher la sortie dans la fenêtre différence de dossier de Visual Studio . La fenêtre d’invite de commandes affiche plutôt la sortie.

/filter

Optionnel. Spécifie une liste de masques d’inclusion et de filtre utilisés pour faire correspondre les noms des fichiers et dossiers à comparer.

/filterLocalPathsOnly

Optionnel. Spécifie que seuls les chemins locaux seront filtrés, sauf si le chemin d’accès du serveur correspondant existe.

/view

Optionnel. Spécifie les informations à inclure dans la sortie à l’aide d’une liste séparée par des virgules des valeurs suivantes :

  • same affiche des fichiers avec le même contenu dans les répertoires source et cible.

  • different affiche des fichiers avec du contenu différent dans les répertoires source et cible.

  • sourceOnly affiche les fichiers qui existent uniquement dans le répertoire source.

  • targetOnly affiche les fichiers qui existent uniquement dans le répertoire cible.

La valeur par défaut est different,sourceOnly,targetOnly.

/collection

Spécifie la collection de projets.

/login

Spécifie le nom d’utilisateur et le mot de passe pour authentifier l’utilisateur auprès d’Azure DevOps.

Remarques

La fenêtre d’invite de commandes affiche la sortie si vous spécifiez /noprompt. Sinon, la fenêtre Différence de dossier Visual Studio affiche la sortie.

Lorsque le système compare le dossier mappé local au dossier serveur auquel il est mappé, la sortie dans la fenêtre Différence de dossier inclut une liste de modifications en attente. En outre, la sortie dans la fenêtre Différence de dossier vous indique si le dossier local contient la dernière copie.

La sortie affichée dans la fenêtre d’invite de commandes répertorie tous les fichiers des dossiers dans les cinq sections suivantes :

  • Éléments qui existent uniquement dans le dossier serveur.
  • Éléments qui existent uniquement dans le dossier local.
  • Éléments qui ont un contenu différent.
  • Éléments qui ont un contenu identique. Vous devez spécifier l’argument same avec l’option /view.
  • Résumé.

Filtres de fichiers et de dossiers

Un filtre est une liste triée de masques de noms utilisés pour faire correspondre le nom des fichiers et dossiers à comparer. Les masques peuvent contenir le point d’interrogation ? caractère générique correspondant exactement à un caractère, et l’astérisque * caractère générique pour correspondre à zéro ou plusieurs caractères.

Vous délimitez les masques dans un filtre à l’aide de points-virgules ;. Les masques de dossier doivent se terminer par une barre oblique inverse \. Pour spécifier un masque d’exclusion, préfixez le masque avec un point d’exclamation !.

Le filtre s’applique aux noms de fichiers et de dossiers à l’aide des règles suivantes :

  • Lorsqu’un filtre spécifie à la fois des masques de fichier et de dossier, les masques de fichier et de dossier sont séparés en une liste de masques de fichier et une liste de masques de dossier. Les masques de fichiers s’appliquent uniquement aux noms de fichiers. Les masques de dossiers s’appliquent uniquement aux noms de dossiers.

  • Pour correspondre à un nom de fichier ou de dossier, la commande compare le nom à chaque masque du filtre dans l’ordre spécifié. Dès que le nom correspond à un masque, le nom est considéré comme une correspondance.

  • Si les masques de fichier dans le filtre contiennent un masque d’inclusion, les fichiers qui ne correspondent à aucun des masques de fichier sont exclus.

  • Si les masques de fichier dans le filtre contiennent uniquement des masques d’exclusion, les fichiers qui ne correspondent à aucun des masques de fichier sont inclus.

  • Si les masques de dossier dans le filtre contiennent un masque d’inclusion, les dossiers qui ne correspondent à aucun des masques de dossier sont exclus.

  • Si les masques de dossier du filtre contiennent uniquement des masques d’exclusion, les dossiers qui ne correspondent à aucun des masques de dossier sont inclus.

Le tableau suivant répertorie les exemples de masque de nom de filtre.

masque de nom Description
*.cs Correspond à tous les fichiers C#.
My*.bmp Correspond à tous les fichiers bitmap qui commencent par Mon.
!*.exe Exclut tous les fichiers exécutables.
!objd\ Exclut tous les dossiers objd.

Le tableau suivant répertorie les exemples de filtre.

filtre Description
*.cs;!objd\;!obj\;!bin\ Correspond à tous les fichiers C# à l’exception des fichiers objd, objou dossiers de bin.
!*.resx;!*.ini;!resources\;!*junk*\ Exclut tous les fichiers .resx et .ini, tous les fichiers du dossier ressources, ainsi que tous les fichiers d’un dossier portant un nom qui inclut le mot courrier indésirable.

Pour plus d’informations sur l’utilisation de l’utilitaire de ligne de commande tf, consultez Utiliser les commandes de contrôle de version Team Foundation.

Exemples

L’exemple suivant compare les fichiers dans le dossier du serveur et un dossier local, organise les fichiers dans le dossier local de manière récursive et affiche la sortie dans la fenêtre d’invite de commandes.

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

Étapes suivantes