Question

Nous utilisons actuellement Visual Source Safe et Team Foundation Server au travail (VSS pour les anciens projets, TFS pour les projets actuels ou nouveaux).

Nous avons toujours utilisé des étiquettes dans le contrôle de code source pour chaque génération. Dans VSS, si vous avez choisi de consulter l'historique des fichiers, vous pouvez inclure des étiquettes. Dans TFS, je ne trouve pas d’option permettant d’inclure les étiquettes dans la fenêtre de l’historique.

Comme l’une des questions les plus fréquemment posées par le support ou la direction est la suivante: "Quelle version avons-nous corrigée / ajouté / supprimé / modifié xxxx?", je me suis toujours fié à l’affichage de nos étiquettes de build dans l’historique.

Puis-je faire en sorte que les étiquettes apparaissent dans l'historique des fichiers?

Était-ce utile?

La solution

Dans la version 2008 de TFS, les étiquettes ne figurent pas dans l'historique standard des fichiers et des dossiers. Si vous voulez vraiment savoir pourquoi, consultez le blog de Brian Harry & Pourquoi les étiquettes TFS ne ressemblent pas aux étiquettes VSS ".

Pour rechercher des étiquettes dans Visual Studio, accédez à Fichier, Contrôle de code source, Étiquette, Rechercher une étiquette ... Vous pouvez ensuite voir quelles versions des fichiers étaient incluses dans cette étiquette.

L’équipe a bien entendu dire que ce n’était pas idéal et la prochaine version de TFS (Team Foundation Server 2010, nom de code "Rosario") inclura des améliorations de la vue Historique afin de faciliter la recherche des étiquettes - voir http://go.microsoft.com/?linkid=7807943 pour la spécification des améliorations apportées à la vue Historique dans TFS 2010.

BTW - En fait, je suis passé à une numérotation de build basée sur un jeu de modifications avec TFS, ce qui rend l'étiquetage moins nécessaire. Voir http://www.woodwardweb.com/vsts/changeset_based.html pour plus de détails. .

J'espère que cela vous aidera,

Martin.

Autres conseils

Ce problème nous tue.

La meilleure solution que j'ai trouvée consiste à utiliser un outil tiers appelé Team Foundation SideKicks, disponible gratuitement ici http://www.attrice.info/cm/tfs/ .

Sous "History Sidekick" il y a un onglet étiquette. Vous pouvez mettre en surbrillance n'importe quel dossier ou fichier et il vous montrera toutes les étiquettes qui ont été déposées sur ce dossier ou fichier et à quel changeet. Malheureusement, vous ne pouvez pas voir une vue complète de l'historique d'un dossier ou d'un fichier avec les étiquettes incluses.

Sous "Label Sidekick". vous pouvez mettre en surbrillance n'importe quelle étiquette à, il peut vous dire quels dossiers / fichiers et changesets sont dans l'étiquette. Cette fonctionnalité est pratiquement identique à celle disponible dans Visual Studio et n’est pas aussi utile.

Un inconvénient est la nécessité d’un serveur TFS 2008 ou supérieur. L'utilisation de l'outil avec le serveur TFS 2005 est extrêmement lente et pratiquement inutilisable.

-ephi

[En raison de la complexité des étiquettes de style TFS, il s’agit d’un problème assez difficile à appliquer aux dossiers; basé sur un commentaire ci-dessus, je vais supposer que la recherche d'étiquettes sur un fichier est suffisante]

Malheureusement, il s’agit de l’un des rares cas périphériques de l’API client TFS qui n’est exposé nulle part dans tf.exe ni dans VS2008. Vous devrez appeler directement l'API. Veuillez consulter http://msdn.microsoft.com/en-us/library/ bb138967.aspx - "versionFilterItem" paramètre fait ce que vous recherchez.

TFS 2010 contient un très utile "Etiquettes". afficher (plutôt que "Changesets") dans l’historique d’une branche. Malheureusement, il ne montre que les étiquettes de la branche que vous avez choisie, plutôt que les étiquettes de toutes les branches / dossiers enfants.

J'ai commencé à essayer de créer mon propre code SQL et à l'exécuter directement sur la ou les bases de données TFS elles-mêmes. Ce code SQL a été exécuté sur TFS 2008. Ce petit extrait affiche d’abord TOUTES les étiquettes et les ensembles de modifications de TOUTES les branches commandées avec l’étiquette de branche / modifiée la plus récemment créée. La prochaine étape dans ce développement serait de parcourir en quelque sorte les changesets et les étiquettes pour ne ramener que les zones qui m'intéressent (comme «Main» ou une branche particulière). J'imagine que si je créais SQL qui ferait tout cela, ce serait lent, et je n'aurais pas toute l'interface graphique que je veux plonger dans l'historique d'un fichier particulier, voir les étiquettes avec cela, etc. Soupir.

select DisplayName, cs.CreationDate, Comment, 'CheckIn' 
from TfsVersionControl.dbo.tbl_Identity i, TfsVersionControl.dbo.tbl_ChangeSet cs 
where cs.ownerid = i.IdentityId
union
select DisplayName, LastModified, Comment, 'Label' 
from TfsVersionControl.dbo.tbl_Identity i, TfsVersionControl.dbo.tbl_Label l 
where l.ownerid = i.IdentityId
order by 2 desc

J'ai déjà utilisé Historique de la branche TFS . Ce n’est pas la meilleure interface utilisateur au monde et vous permet uniquement d’afficher l’historique par fichier, mais le travail est fait.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top