Partager via


Commande Shelve (Team Foundation Version Control)

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

Visual Studio 2019 | Visual Studio 2022

Team Foundation Version Control (TFVC) shelve commande stocke un ensemble de modifications en attente, ainsi que des notes d’archivage en attente, un commentaire et une liste d’éléments de travail associés sur un serveur Azure DevOps sans réellement les archiver.

Conditions préalables

Si vous souhaitez utiliser la commande shelve pour supprimer un jeu d’étagères, être propriétaire d’un jeu de étagères ou votre Administrer les modifications l’autorisation doit être définie sur Autoriser. Pour plus d’informations, consultez autorisations TFVC par défaut.

Syntaxe

tf shelve  [/replace] [/comment:("comment"|@commentfile)] [shelvesetname] [/validate][/noprompt] [/login:username,[password]]
tf shelve [/move] [/replace] [/comment:("comment"|@commentfile)] 
[/recursive] [shelvesetname] itemspec [/validate] [/noprompt] [/login:username,[password]]
tf shelve /delete shelvesetname[;owner] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]

Paramètres

Arguments

argument Description
<commentfile> Spécifie un chemin d’accès au système de fichiers d’un fichier à partir duquel les commentaires du jeu d’étagères doivent être lus.
<comment> Spécifie le commentaire du jeu d’étagères.
<itemspec> Identifie les fichiers ou dossiers à enregistrer. Par défaut, toutes les modifications en attente dans l’espace de travail actuel sont supprimées si ce paramètre n’est pas spécifié. Pour plus d’informations sur la façon dont Team Foundation analyse le itemspec pour déterminer quels éléments se trouvent dans l’étendue, consultez Utiliser des options pour modifier la façon dont une fonction de commande.
<shelvesetname> Spécifie un nom par lequel le jeu d’étagères peut être récupéré à partir du serveur Azure DevOps. Vous pouvez spécifier une combinaison existante de shelvesetname et de owner, mais uniquement si /replace est également spécifié.

Vous devez fournir une valeur pour ce paramètre.
<owner> Identifie le propriétaire actuel ou prévu du jeu d’étagères par nom d’utilisateur. Par défaut, l’utilisateur actuel est affecté à la propriété de l’ensemble de rayons si celui-ci n’est pas spécifié.
<username> Fournit une valeur à l’option /login. Vous pouvez spécifier une valeur de nom d’utilisateur comme DOMAIN\username ou username.
<TeamProjectCollectionUrl> URL de la collection de projets qui contient les fichiers ou dossiers que vous souhaitez enregistrer, par exemple http://myserver:8080/tfs/DefaultCollection/.

Options

option Description
/new L’état sélectionné de chaque modification en attente, comme indiqué dans la boîte de dialogue Archiver, le commentaire, les éléments de travail associés, les notes d’archivage et la raison de remplacement de la stratégie d’archivage, sont stockés sur votre ordinateur de développement en attente de modifications jusqu’à ce que vous les archivez. L’option /new efface ces métadonnées d’archivage avant de vous archiver.
/move Supprime les modifications en attente de l’espace de travail une fois l’opération de secours réussie.
/replace Remplace le jeu d’étagères existant par le même nom et le même propriétaire que celui que vous spécifiez.
/delete Supprime l’ensemble de rayons spécifié. Seule l’option /server peut être combinée avec cette option. Si vous n’incluez pas l’option /noprompt, un message de confirmation s’affiche lorsque l’option /delete est spécifiée.
/comment Ajoute un commentaire spécifié décrivant les modifications de la bibliothèque.
/recursive Rayons tous les éléments dans le dossier d’ensembles d’étagères spécifiés, ses sous-dossiers et tous les éléments qui y figurent si le itemspec que vous fournissez est un dossier.
/noprompt Supprime toutes les invites d’entrée à partir de vous.
/validate Cette option sélectionne les Évaluer les stratégies et les notes d’archivage avant de cocher case à cocher dans la boîte de dialogue Shelve - Fichiers sources lorsqu’elle s’ouvre. Lorsque la case à cocher de validation est cochée, la boîte de dialogue évalue les stratégies d’archivage et vérifie que les notes d’archivage doivent être renseignées. Cette option est utile lorsque les modifications sont remises pour révision et archivage par quelqu’un d’autre. Non valide lorsqu’il est combiné à /noprompt.
/login Spécifie le nom d’utilisateur et le mot de passe pour authentifier l’utilisateur auprès d’Azure DevOps Server.
/collection Spécifie la collection de projets.

Remarques

La commande shelve de l’utilitaire de ligne de commande tf sauvegarde les modifications en attente, une liste d’éléments de travail associés, des notes d’archivage en cours et des commentaires dans un ensemble de rayons sur le serveur Azure DevOps. Un ensemble de étagères ressemble beaucoup à un ensemble de modifications qui n’est pas validé sur le serveur. À l’instar d’un ensemble de modifications, un ensemble de rayons peut être récupéré du serveur dans un espace de travail local par tout utilisateur disposant d’autorisations suffisantes.

La récupération est une alternative à la vérification des modifications en attente qui n’ont pas été testées suffisamment. Utilisez la étagère lorsque vous souhaitez interrompre votre travail pour :

  • Partagez un ensemble de fichiers de travail locaux avec un autre développeur ou testeur sans vérifier vos modifications apportées au serveur de contrôle de version.

  • Réservez temporairement un groupe de modifications en attente sans les archiver. Vous pouvez donc travailler sur un problème de priorité plus élevée. Une fois que vous avez terminé le travail sur la tâche à priorité élevée, vous pouvez restaurer vos modifications en utilisant la commande Unshelve.

Si vous incluez l’option /move, la commande shelve restaure chaque révision de fichier de sauvegarde vers la version de l’espace de travail de base la dernière version récupérée du serveur vers l’espace de travail actuel. Plus précisément, pour tous les éléments que vous avez enregistrés, l’option /move :

  • Utilise Undo pour annuler les modifications qui ont été enregistrés. Les fichiers qui étaient en attente d’ajouts sont supprimés de l’espace de travail.

  • Récupère les versions de l’espace de travail de base de tous les fichiers pour lesquels des éditions en attente existent du serveur vers l’espace de travail actuel.

  • Marque tous les éléments de l’espace de travail actif en lecture seule.

Si vous incluez l’option /delete, TFVC supprime définitivement l’ensemble de rayons spécifié du serveur Azure DevOps.

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 crée un ensemble de rayons sur le serveur Azure DevOps appelé Reflector_BuddyTest, affecte la propriété à l’utilisateur Pat, retourne tous les éléments de l’espace de travail actuel à la dernière version téléchargée lors de la dernière opération de get et définit un état en lecture seule :

c:\projects> tf shelve Reflector_BuddyTest;Pat /move

L’exemple suivant supprime l’ensemble de rayons existants new-feature du serveur, crée un ensemble de rayons par ce nom et conserve toutes les modifications en attente dans l’espace de travail actuel :

c:\projects> tf shelve new-feature /replace

L’exemple suivant crée un ensemble de rayons nommé HelloWorld_TestMe qui inclut toutes les modifications en attente apportées à tous les fichiers .cs dans les C :\projects dossier de travail et ses sous-dossiers :

c:\projects> tf shelve HelloWorld_TestMe c:\projects\*.cs /recursive

L’exemple suivant supprime l’ensemble de rayons HelloWorld_24 :

c:\projects> tf shelve HelloWorld_24 /delete