2017-10-20 31 views

Répondre

0

Vous pouvez appeler commande tf dans le script Powershell pour ce faire, les étapes nécessaires pour tirer une étiquette de TFS e comme suit:

  1. Configurer les paramètres suivants en tant que paramètres d'entrée: emplacement du disque où l'étiquette est tirée (répertoire de code source) espace de travail TFS et le dossier dont le code est tiré le nom de l'étiquette associée à l'espace de travail TS et le dossier
  2. Supprimer le code existant à partir du répertoire du code source
  3. Créer le code source di rectorat

  4. Modifier le répertoire de travail en cours dans le répertoire du code source La raison de cela est décrit dans: « Construire l'automatisation: Obtenir plusieurs étiquettes à partir de TFS TF GET (sans supprimer les fichiers associés à la précédente TF GET) »(en option)

  5. supprimer l'espace de travail TFS si elle existe alias espace de travail tf/supprimer

  6. Créer l'espace de travail TFS aka espace de travail tf/new

  7. Carte du pli de code source er dans le dossier de collection et d'associer cette mise en correspondance avec l'espace de travail aka tf workfold/carte
  8. Obtenez l'étiquette de TFS aka tf get /version:L<label name> /noprompt

code détail s'il vous plaît se référer ce blog: How to Correctly pull labels from TFS using PowerShell

Une autre façon est En utilisant l'API TFS, vous pouvez utiliser un VersionSpec pour spécifier la version souhaitée. Tels qu'un DateVersionSpec, un ChangeVersionSet ou un LabelVersionSet. Code de détail s'il vous plaît se référer How to use the TFS API to retrieve a historical version of your project, vous pourriez - impliquer TFS API dans PowerShell.

+0

Merci pour votre réponse détaillée, mais, j'utilise dllsin le script donwload, pour obtenir la dernière version je passe "[Microsoft.TeamFoundation.VersionControl.Client.VersionSpec] :: latest" en tant que paramètre de la méthode GetItems, comment pour le faire pour une étiquette (version) –

+0

@DouraidTLILI Il existe une classe [LabelVersionSpec] (https://msdn.microsoft.com/en-us/library/microsoft.teamfoundation.versioncontrol.client.labelversionspec (v = vs. 120) .aspx), n'ont pas essayé, mais devraient être quelque chose comme ceci '" "Microsoft.TeamFoundation.VersionControl.Client.LabelVersionSpec" -argumentList $ sTFSlabel' une chaîne de nom d'étiquette. Vous pouvez jeter un oeil à ce blog, même s'il utilise la méthode 'vcs.DownloadFile': http://www.cnblogs.com/Henry1225/archive/2012/05/07/2487503.html –