I. Introduction

Visual Studio Team Foundation Server est le nouvel outil de travail collaboratif développé par Microsoft, et qui va arriver avec Visual Studio 2005. Non seulement cet outil va vous permettre de définir des priorités sur des tâches, d'avoir une gestion des sources, etc. mais il permet également de permettre une amélioration de la productivité des membres de votre équipe.
Je vais essayer, au travers de cet article, de vous guider dans l'installation de TFS (Team Foundation Server) et dans la compréhension de son utilisation.

Tous les exemples et screenshots visibles sur cet article ont été réalisés avec la version Beta 3 Refresh de Team Foundation Server.

II. Installation des pré-requis

Avant de pouvoir utiliser TFS, vous devez installer les pré-requis nécessaires.
La première chose à faire est de créer les comptes utilisateurs qui vous seront utiles, pour l'installation et l'utilisation de TFS.

Création des comptes utilisateurs de TFS


Il y a 3 comptes à créer:

  • TFSREPORTS: Utiliser par les sources de données de SQL Reporting Services
  • TFSSERVICE: Compte de login du service Windows Team Foundation Server
  • TFSSETUP: Compte utilisé pour réaliser l'installation de TFS


Le nom des comptes à créer n'est pas fixe: en effet, vous pouvez tout à fait les changer. Lors de l'installtation de TFS, il faudra juste qu vous pensiez à donner les bons nom des comptes utilisateurs que vous venez de créer.

Le compte TFSSETUP doit être placé dans le groupe des administrateurs pour pouvoir réussir l'installation de TFS.


La deuxième chose à faire, après avoir créer les comptes utilsiateur, est d'installer IIS (Internet Informations Services) si cela n'est pas déjà fait.

Installation de IIS

Lorsque vous installez IIS, n'installez pas les extensions FrontPage. En effet, TFS utilise SharePoint Services, qui n'est pas compatible avec ces extensions.


Après l'installation de IIS, il faut vous attaquer à l'installation de SQL Server 2005.

Installation de SQL Server 2005


Pour cette installation, rien de bien compliqué: l'installation est tout à fait standard et ne nécessite aucun paramétrage/changement particulier.
Enfin, le dernier pré-requis, et pas le moindre, est l'installation de Windows SharePoint Services.

Installation de Windows SharePoint Services

Lors de l'installation de WSS (Windows SharePoint Services), choisissez bien l'installation de type "Server Farm", sinon l'installation de TFS ne pourra pas aboutir.


Je vous recommande, une fois l'installation terminée, d'appliquer toutes les mises à jour critiques, depuis le site de Windows Update.

Mise à jour de WSS


Une fois l'installation de WSS terminée, vous avez finit d'installer tous les pré-requis nécessaires: il ne vous reste plus qu'a lancer l'installation de TFS.

III. Installation de Team Foundation Server

L'installation a proprement parlé, de Team Foundation Server, ne pose pas de soucis particuliers. Il vous suffit de monter l'image dans un outil tel que Deamon Tools (ou bien vous pouvez graver l'image ISO) et lancer l'installation.

Installation de TFS


L'installeur se charge de mettre en place les bases de données nécessaires à l'utilisation de TFS, et paramètre également Windows SharePoint Services: il indique le nom du serveur SQL, etc...

Installation des bases de données de TFS


Paramétrage de Windows SharePoint Services


Si l'installation s'est déroulée correctement, vous devriez voir un écran vous indiquant que Microsoft Visual Studio 2005 Team Foundation Server s'est installé avec succès.

Installation de TFS réalisée avec succès


Là encore, je vous conseille de faire les mises à jour de votre système, pour être sûr d'avoir les dernières version et les patch de sécurité des logiciels que vous avez installé.

Lors de l'installation, vous pouvez recevoir un message d'erreur à propos d'un Web Service qui ne peut pas être chargé: je vous conseille de regarder ce billet sur mon blog, peut-être vous aidera-t-il.

IV. Installation de Team Foundation Server Build

Team Foundation Server Build est un complément à Team Foundation Server, qui vous permet de réaliser les builds de vos projets.

Installation de Team Foundation Server Build


Une fois l'installation terminée, une page indiquant le succès de l'opération apparaît à l'écran:

Installation de TFS Build réalisée avec succès


Passons maintenant à l'installation de Team Foundation Server Proxy....

V. Installation de Team Foundation Server Proxy

Team Foundation Server Proxy est un autre complément de Team Foundation Server, qui vous permet de mettren en place un système de cache sur les fichiers sources auxquels vous voulez (ou vous avez déjà) accédé. Tout comme pour Team Foundation Server Build, l'installation de Team Foundation Server Proxy ne pose aucun problème:

Installation de Team Foundation Server Proxy


Voyons maintenant l'installation de l'outil qui nous permettra de gérer notre serveur TFS, le Team Explorer.

VI. Installation de Team Explorer

Maintenant que vous avez installé tout ce qu'il vous faut pour avoir un serveur TFS opérationnel, il vous faut installer de quoi administrer ce serveur. En effet, pour le moment, vous savez que vous pouvez créer des projets de travail en équipe, que vous avez un controle des sources, etc... mais vous ne savez pas comment faire pour gérer, organiser tout cela. Pour répondre à cette question, sachez que vous devez tout simplement installer ce que l'on appelle le "Team Explorer" .
Il s'agit d'un plugin à Visual Studio 2005 qui vous permet d'effectuer toutes les tâches de maintenance et d'administration de votre serveur TFS, ainsi que de votre projet.
Ce "Team Explorer" est livré avec Team Foudation Server: ainsi, lorsque vous insérer le CD d'installation de TFS, vous avez la possibilité d'installer, également, Team Explorer. Cette installation de présente aucune difficulté majeure.

Installation du Team Explorer


Voici un aperçu du Team Explorer, dans Visual Studio, une fois qu'il est installé avec succès.

Aperçu du Team Explorer


Cette image vous permet de bien vous rendre compte de l'intérêt du Team Explorer: ajouter des serveurs TFS, vous y connecter, rechercher des projets, etc...

Voilà, à partir de maintenant, vous avez un environnement complètement opérationnel: vous avez un serveur TFS ainsi qu'un client pour administrer ce serveur. Je vais maintenant vous parler un peu plus en détails de Team Foundation Server, avant d'aller plus loin dans la suite de cet article.
Je me permet tout de même de rajouter un lien vers ce poster, qui indique, de façon très précise, la marche à suivre pour installer un serveur Team Foundation Server.

VII. Informations sur Team Foundation Server

Team Foundation Server est un outil de travail collaboratif. A ce titre, vous pouvez l'utiliser, dans votre projet, si votre équipe comporte plusieurs développeurs et que vous souhaitez, par exemple, leur donner accès des documents, leur permettre de travailler simultanément sur des fichiers sources, etc...
C'est un outil dont votre Entreprise (et plus précisément votre équipe de développeurs) pourrait avoir besoin, si vous prévoyez d'utiliser un outil de controle des sources, ou que vous envisagez d'utiliser un portail (site Web) pour échanger entre développeurs.

Une chose importante à savoir: Team Foundation Server n'est qu'un ensemble de Web Services. Team Explorer n'est qu'un outil, une façade vous permettant de gérer, manipuler ces Web Services et donc d'administrer votre serveur TFS.
Vous pouvez donc tout à fait écrire une application (Web ou Windows) qui manipule ces Web Services (et donc votre serveur TFS) et qui remplacera le Team Explorer.
Pour vous en convaincre, sachez que vous pouvez affichez et invoquez ces Web Services. En voici d'ailleurs la preuve, en image:

Appel de la liste des méthodes des Web Service de TFS


Voyez maintenant ce qui se passe lorsque l'on appelle une de ces méthodes. Dans mon exemple, nous avons appellé la méthode ListAllProjects, qui nous retourne la liste des projets qui sont sur notre serveur TFS:

Appel de la Web Méthode ListAllProjects


Le résultat, comme nous nous y attendions, nous renvoie bien l'ensemble des projets situés sur le serveur (dans mon cas, il n'y a qu'un seul projet, DotnetProject, qui sera créé plus tard lors de cet article).

Résultat de l'appel à la Web Méthode ListAllProjects


A titre informatif, je vous joins un lien vers une image montrant, dans le détails, l'architecture d'un projet utilisant TFS/VSTS (Visual Studio Team System): http://www.drp.co.za/posters/0202_MicrosoftTeamSystem.jpg

VIII. Configuration de Team Foundation Server

Toute la partie Configuration que nous allons voir dans ce chapitre concerne la configuration du serveur TFs, et s'applique donc à tous les projets que vous avez sur votre serveur.

VIII-A. Gestion/Configuration des groupes

Team Foundation Server n'est qu'un serveur comme les autres: à ce titre, vous pouvez, comme dans beaucoup de serveurs, céer des groupes contenant des utilisateurs. Vous pourrez ensuite assigner des permissions à ces groupes, et seuls les utilisateurs inclus dans le groupe correspondant pourront effectuer les opérations permises: c'est un peu le même procédé que les groupes/permissions sur un serveur Active Directory.
Pour commencer, dans le Team Explorer, faîtes un clic droit sur le nom du serveur puis choisissez "Team Foundation Server Settings". Là, sélectionnez "Group Membership" et vous devriez alors voir cet écran:

Gestion des groupes


Cette partie vous permet de gérer (création, modification, suppression) les groupes d'utilisateur, au niveau de votre serveur (et non pas au niveau du projet).
Pour l'écriture de cet article, j'ai rajouté le groupe "Team Foundation Clients": c'est avec ce groupe que je travaillerais dans mes exemples.

Pour ajouter un utilisateur à un groupe, rien de plus simple:

  • Sélectionnez le groupe,
  • Cliquez sur "Properties",
  • Là, vous pouvez sélectionner le ou les utilisateurs à ajouter à votre groupe


Vous avez la possibilité d'ajouter un utilisateur ou groupe local (idéal dans la cas où vous utiliser TFS avec Active Directory) ou bien un utilisateur/groupe du serveur TFS.

VIII-B. Configuration de la sécurité

Ajouter des groupes, remplir ces groupes avec des utilisateurs, etc.. tout cela est bien pratique mais encore faudrait-il que ces groupes aient les autorisations d'effectuer des tâches, des actions sur votre serveur.
Pour cela, faîtes un clic droit sur le nom du serveur, choisissez "Team Foundation Server Settings" et sélectionnez "Security".

Gestion de la sécurité des groupes TFS


Ainsi, vous pourrez gérer, de manière très précise, les permissions associées à chaque groupe.

Le groupe "Team Foundation Administrators" est le groupe des administrateurs du serveur TFS: ce groupe possède tous les privilèges possibles, et vous ne pouvez pas lui en enlever. Faîtes donc attention, lorsque vous gérer vos groupes/utilisateurs, à ne pas rajouter n'importe qui (ou n'importe quel groupe TFS) dans ce groupe Administrateur.
En règle général, il est conseillé de toujours créer vos groupes utilisateurs avec le minimum de droits possibles, puis de leur en rajouter s'ils en ont réellement besoin. Ainsi, vous évitez d'avoir des groupes/utilsiateurs avec plus de pouvoirs que nécessaire sur votre serveur.


Si vous avez du mal à saisir tout cela, reportez-vous à ce schéma qui, je l'espère, vous permettra de mieux comprendre la gestion des groupes et des sécurité, dans Team Foundation Server.

VIII-C. Type de fichiers

Une des fonctionnalités intéressante de TFS, que nous étudierons plus en détails utltérieurement, est le controle des sources. Avec TFS, vous pouvez uploader vos fichiers sources sur le serveur, pour que les autres développeurs puissent les récupérer et eventuellement, les modifier, etc...
Cependant, pour des raisons de sécurité, vous ne pouvez pas autoriser n'importe quel type de fichier à être déposé sur le serveur. C'est pourquoi si vous faîtes un clic droit sur le nom du serveur, que vous choisissez "Team Foundation Server Settings" puis "Source Control File Types", vous aurez accès à un panneau vous permettant de choisir les extensions que vous voulez autoriser.
Faîtes bien attention lors de la modification de ces extensions et prenez bien garde à ne pas autoriser une extension qui pourrait être utilisée par un développeur/pirate pour provoquer des dégats sur le poste des autres développeurs (virus, maccros malveillantes, etc..).
A noter que celles sélectionnées par défaut devraient largement vous suffire, dans la plupart des cas.

IX. Gestion de Team Foundation Server

IX-A. Gestion des alertes

Une des possibilités intéressant de TFS est de pouvoir paramétrer des alertes emails lors de certains évênements survenants à votre projet. Pour cela, dans le Team Explorer, faîtes une clic droit sur le nom de votre projet et sélectionnez "Project Alert".

Gestion des alertes du projet


L'écran suivant devrait apparaitre pour vous permettre de choisir:

  • le type d'évènement à auditer
  • l'adresse email des personne devant recevoir l'alerte


Type d'évènement à surveiller


Un regret tout de même: TFS ne vous permet pas de surveiller une action que vous aurez définit à l'avance. Seule les actions déjà existantes peuvent être auditer, et vous ne pouvez pas en rajouter...
Cela pourrait être intéressant d'avoir une telle fonctionnalité dans une prochaine version de TFS.

IX-B. Création d'un nouveau projet

Dans cette partie, je vais vous indiquer, pas à pas, la procédure pour créer un nouveau Projet sur votre serveur TFS. il y aura beaucoup de screenshot pour la simple et bonne raison que c'est, d'après moi, beaucoup plus explicatif qu'une dizaine de ligne descriptive.

La première chose à savoir, pour créer un projet, est que vous utilisateur/compte doit posséder les droits nécessaires sur le serveur pour une telle opération. Si vous avez effectivement les permissions adéquates, alors voici la marche à suivre.
Pour commencer, toujours dans le "Team Explorer", faîtes un clic droit sur le nom de votre serveur et choisissez "New Team Project...". A ce moment là, un écran apparaît, en vous demandant de saisir le nom de votre projet:

Création d'un nouveau projet: Saisie du nom du projet


Ensuite, il vous faut choisir le type de méthodologie a adopter pour la conduite de votre projet. Par défaut, il y en a deux:

  • MSF For Agile Software Development
  • MSF For CMMI Process Improvement


Choix de la méthodologie pour le développement de l'application


Comme tout outil de travail collaboratif, il vous faut un moyen de communiquer entre tout les membres de votre équipe de projet. TFS utilise pour cela WSS (Windows SharePoint Services): un site portail, pour votre projet, sera créé.
C'est à vous de rensigner le nom et la description de ce site, lors de la préparation de votre projet:

Indication des renseignements pour la création du site/portail WSS


L'étape suivante consiste à créer le répertoire de controle des sources. Pour simplifier, voyez ce répertoire comme un répertoire de stockage des sources de votre projet: en effet, pour pouvoir uploader les sources de votre projet sur le serveur (et donc profiter au maximum des possibilités de "Source Control" de votre serveur), vous devez spécifier:

  • si vous souhaitez créer un nouveau répertoire
  • si vous souhaitez créer une nouvelle branche d'un projet déjà existant


Vous avez également la possibilité de ne pas créer, pour le moment, ce répertoire. Auquel cas, vous ne pourrez pas utiliser le "Source Control" dès la fin de la création de votre projet:

Création du répertoire de stockage des sources


Avant de terminer et de valider la création de votre projet, vous vous retrouvez face à une page récapitulative qui vous rapelle l'ensemble des choix que vous avez fait pour ce projet:

Page récapitulative


Cliquez alors sur le bouton "Finnish" validera ces choix et lancera la création du projet.

Attention, ce procesus peut durer un certain temps: en effet, la création d'un projet implique des modifications sur la base de données, la création des groupes et des permissions, etc.. ce qui peuvent prendre plus ou moins longtemps.


Création d'un projet (1)


Création d'un projet (2)


Création d'un projet (3)


Si tout se passe bien, vous devez voir l'écran suivant apparaitre sur votre écran:

Création d'un projet terminée


A la fin de la création du projet, vous devriez voir votre navigateur se lancer et afficher le site Web du projet: ce site Web est entièrement paramétrable car, comme je vous l'ai déjà dit, c'est un SharePoint

Visualisation du site Web


Voila, votre projet est maintenant créé et prêt à être utilisé: nous allons donc voir comment le paramétrer pour le plus adapté possible à vos besoins.

IX-C. Paramétrage du projet

Il y a plusieurs points que vous pouvez paramétrer pour votre projet:

  • la sécurité
  • les itérations
  • le source control


Voyons cela avec plus de détails.

IX-C-1. La sécurité de votre projet

Vous avez la possibilité, comme vous l'avez fait pour votre serveur, de créer et de donner des droits à des groupes d'utilisateurs.
Ces groupes n'auront accès qu'a votre projet et ne possèderons que les privilèges que vous leur aurez assigné.

Attention, lorsque vous gérer les groupes utilisateurs de votre projet: n'ounliez pas que les permissions appliquées au niveau de votre serveur sont toujours actives.

Gestion des groupes du projet

IX-C-2. Itération

Les itérations d'un projet sont en quelque sorte les phases qui le compose. Ainsi, un projet peut avoir les itérations suivantes:

  • Pré-Alpha
  • Alpha
  • Beta 1
  • Beta 2
  • RC
  • RTM
  • etc..


Vous avez la possibilité d'ajouter autant d'itération que vous le souhaitez, de créer des sous-itérations, etc...

Gestion des itérations


Mais, me direz-vous, quel est l'intérêt de tout ceci ?
Tout simplement, cela vous permet de spécifier à quelle étape de votre projet une tâche doit être réalisée. Ainsi, vous pouvez spécifier que l'écriture de la documentation de votre code ne doit pas se faire avant la BETA 1, etc...
Bref, cela vous donne la possibilité de n'assigner des tâches qu'a certaine partie de votre projet.

IX-C-3. Source Control

Nous l'avons vu précédemment, TFS peut-être utilisé comme outil de gestion des sources de projets. Ceci dit, vous avez la possibilité de spécifier des caractéristiques différentes pour chaque "Source Control" de vos différents projets.
Vous pouvez, par exemple, autoriser (ou non) les Check Out multiples:

Gestion des Chec Out multiples


Un Check Out est le rapatriement des fichiers/données, depuis le serveur, sur le poste de développement.


Vous pouvez également spécifier des règles, des contraintes que le développeur doit suivre lors du Check In.

Gestion des Check In


A l'inverse du Check Out, le Check In correspond à l'envoi sur le serveur (la fusion) des données modifiées localement.


Vous pouvez demander qu'une analyse de code soit effectuée, qu'un "work item" soit complété, etc... avant que les données modifiées ne puissent être envoyées au serveur TFS.

IX-D. Utilisation de Team Foundation Server

IX-D-1. Work Items

Un "Work Item" est un élément de travail. En effet, il peut s'agir d'un bug à résoudre, d'un scénario à compléter, d'une tâche à effectuer, etc...

Liste des Work Item


Par défaut, à la création d'un projet, il y a 14 "Work Item" de type Tâche pré-configurées: ceci résulte de l'utilisation de MSF For Agile Software Development, qui définit des tâches à réaliser AVANT la conception, le développement même du projet.

Liste des Work Item existants avant le développement du projet


Comme vous pouvez le voir, les tâches indiquées par ces Work Items prédéfinis permettent une meilleure organisation/gestion du projet: ainsi, on s'assure que tout est parfaitement configuré (permissions, itération, etc...) avant de commencer le développement.

Vous pouvez tout à fait ajouter un Work Item à cette liste. Pour cela, la procédure est relativement simple:
- faîtes un clic droit sur "Work Items" et pointez "Add Work Item" - là, vous avez la possibilité de choisir le type de Work Item que vous voulez créer: une tâche, un scénario, etc... En effet, n'oubliez pas qu'un Work Item est un élément de travail, une action à faire et à terminer avant de continuer la suite du développement

Ajout d'un Work Item


- entrez les informations relatives à cet élément et choisissez l'itération qui lui correspond:

Seul le nom/titre de l'élement est obligatoire: les autres informations peuvent être ignorées si vous estimez qu'elle ne sont effectivement pas importantes pour la compréhension de l'élément.

Choix de l'énumération


- ajoutez, éventuellement, des commentaires/fichiers joints, idéals pour transmettre des fichiers (schémas de bases de données, etc...) aux autres développeurs/membres de l'équipe travaillant sur le projet:

Ajout de commentaire


Ajout de fichier joint


- enregistrez les modifications et, si vous réaffichez l'ensemble des tâches, vous devriez voir celle que vous avez ajouté.

Vous pouvez aussi modifier un Work Item: faire passer l'état d'un Work Item de "Active" à "Closed" permet de signaler que cet élément n'a plus à être traité. La tâche est terminée, et elle n'apparaît plus dans la liste des tâches à traiter.

Modification d'un Work Item

IX-D-2. Documents

Vous avez la possibilité d'ajouter des documents à votre projet: cela peut vous être utile si vous avez besoin d'échanger, entre les membres de votre équipe, des schémas, des fichiers Excel ou Word, des diagrammes de base de données, etc....
Ces documents sont stockés sur le portail SharePoint: VS 2005 ne représente qu'une interface graphique permettant de les afficher.

Visualisation des documents

IX-D-3. Rapports

Dans le même esprit que la visualisation des document, le Team Explorer et Visual Studio 2005 vous permettent d'avoir ue vue rapide de l'ensemble des rapports qui sont créés pour votre projet.

Attention, lorsque vous demandez la visualisation de certains rapports: en effet, ceux-ci peuvent n'être générés, la première fois, qu'après un certains laps de temps. Par exemple, le rapport de visualisation de builds sera vide tant qu'une build n'aura pas été lancée, etc...


Visualisation de rapports

IX-D-4. Utiliser TFS dans Visual Studio

IX-D-4-a. Ajout d'une solution Visual Studio au Source Control

A partir de ce moment là, vous avez installé le serveur TFS, puis vous avez créer le projet sur le serveur. Pour pouvoir commencer à travailler, il vous faut ajouter les fichiers de votre application/projet au Source Control.
Pour cela, dans Visual Studio, ouvrez votre projet et, dans l'explorateur de solution, faîtes un clic droit dessus puis choisissez "Add Solution to Source Control":

Ajout de la solution au Source Control


Indiquer ensuite quel projet, sur le TFS, va recevoir vos sources: en effet, vous pouvez tout à fait avoir un projet qui n'utilise pas le Source Control:

Mapping de la solution VS au projet TFS


Une fois l'ajout fait, la fenêtre "Pending Changes" apparait et vous montre les changements qui ont été effectués sur vos fichiers locaux, et qui peuvent être mis à jour sur le serveur.
Comme c'est le début, tout les fichiers sont considérés comme modifiés et doivent être mis à jour avec le serveur.

A noter que, dans votre explorateur de solutions, vous pouvez voir quels fichiers ont été modifiés localement: ainsi, un petit plus apparaît à coté de chaque fichier nécessitant d'être synchronisé/uploadé avec le serveur.

Liste des fichiers modifiés


Fichiers nécessitant d'être synchroniser/uploader sur le serveur TFS


Cliquez alors sur "Check In" pour mettre à jour le serveur avec vos fichiers modifiés. A noter que vous pouvez également cliquer sur "Shelve" pour uploader les fichiers modifiés sur le serveur, mais ne pas les fusionner.

Intérêt du Shelving: Si par exemple, une règle sur votre serveur TFS vous impose d'avoir une solution qui compile correctement pour pouvoir la fusionner avec votre serveur, et que cela n'est pas le cas, utiliser l'option "Shelve" vous permettout de même d'uploader les fichiers, alors que ceux-ci ne compilent pas.

Synchronisation des modifications

IX-D-4-b. Modifier un fichier

Pour modifier un fichier, vous avez 2 possibilités:

  • Dans l'explorateur de solutions, double cliquez sur le fichier que vous voulez modifier: un "Check Out" automatique sera effectué et le fichier sera alors verrouillé: vous serez le seul à pouvoir le modifier, les autres développeurs travaillant avec vous ne pourront pas changer son contenu tant que vous aurez la main dessus
  • Faîtes un clic droit sur le nom du fichier et sélectionner "Check Out for Edit"
Check Out


Si vous choisissez cette deuxième option, un assistant apparaîtra et vous demandera le type de verrou que vous voulez appliquer sur le fichier:

  • None: Tous les autres développeurs peuvent faire des Check out sur le même fichier (dangereux car cela autorise plusieurs personnes à modifier le même fichier)
  • Check Out: Empêche les autres utilisateurs de faire des Check In / Check Out (Recommandé)
  • Check In: Autorise les Check Out multiples mais empêche les Check In


Type de verrou à utiliser


Une fois les modifications effectuées, pensez à faire un Check In pour que les autres développeurs de votre équipe puisse récupérer et travailler avec la dernière version des fichiers.

IX-D-4-c. Verrouiller un fichier

Si vous désirez verrouiller un fichier pour travailler dessus ultérieurement (et ainsi empêcher qu'un autre membre de votre équipe ne modifie ce fichier avant vous), vous pouvez le locker.
Pour cela, faîtes un clic droit sur le nom du fichier, et sélectionner "Lock.

Vérouillage d'un fichier

Là encore, un asssitant vous propose 2 type de verrou (les même que précédemments).

Options du vérouillage

IX-D-4-d. Spécifier une police de Check In

Si vous souhaitez imposer aux développeurs/membres de votre équipe une règle pour pouvoir uploader leur fichier sur le serveur (donc, faire un Check In), vous devez spécifier une stratégie de Check In (Check In Policy).
Pour cela, dans le Team Explorer, faîtes clic droit sur le nom du projet, sélectionnez "Team Project Settings" puis "Source Control". Dans la fenêtre qui apparait, sélectionnez l'onglet "Check In Policy" et cliquez sur "Add".

Ajour d'une police de Check In


Sélectionnez par exemple "Work Item", et essayer de faire un "Check In" sur un fichier: vous devriez avoir un message d'erreur vous indiquant que le checkin ne peut pas être effectué car les pré-requis ne sont pas satisfait:

Erreur lors des pré-requis


En cliquant sur "Policy Warnings", vous pouvez voir les pré-requis nécessaires pour réussir un Check In.

Explication des erreurs du Check In


Dans notre cas, il faut associer notre Check In à un Work Item: on clique donc sur "Work Items". Le "Team Explorer" interroge alors TFS pour avoir la liste des Work Items disponibles.

Recherche des Work Items sur le serveur


Cochez le (ou les) item(s) adéquat(s) et cliquez sur "Check In". Le fichier est mis à jour sur le serveur !

Application d'un Work Item à un Check In

Si vous sélectionnez "Resolve" pour le "Check In Action", ceci aura pour effet de supprimer le Work Item de cette liste: en effet, cette action a pour effet d'indiquer que le Check In que vous allez faire termine cette tâche (donc ce Work Item est finit/traité).

IX-D-4-e. Le Source Control en une image


Afin de mieux vous résumer ceci, je vous conseille de regarder cette image, qui reprend tout ce que nous venons de voir: http://www.drp.co.za/posters/0202 Microsoft Team System Source Control.jpg

IX-D-5. Team Builds

Avec Team Foundation Server, vous pouvez paramétrer des builds automatiques pour vos projets. Cela peut-être pratique si vous ne voulez pas vous-même lancer ces compilations de projet.
Pour cela, il vous suffit de faire un clic droit sur "Team Builds", puis de choisir "New Team Build Type".
Là, un assistant vous demande le nom (et éventuellement une description) que vous voulez donner à votre Build.

Création d'une Build (1)


Ensuite, sélectionner la ou les solutions que vous voulez intégrer à votre Build:

Sélection des solutions


Ensuite, choisissez la configuration pour cette build (Release/Debug, Any CPU, etc....):

Paramétrage de la configuration


Puis, vous devez indiquer la machine et du répertoire de stockage des builds

Sélection de la machine cible


Vous avez ensuite la possibilité de spécifier des options pour votre Build: ainsi, vous pouvez demander que des tests soit effectués, à ce qu'une analyse de code soit lancée, etc....

Réglage des options de la Build


Finalement, vous vous retrouvez sur une page qui affiche le résumé de la configuration que vous avez sélectionné pour le paramétrage de votre Build. Cliquez sur "Finnish" lance la création du projet de build automatique et vous affiche le fichier de configuration (fichier au format XML):

Page de résumé


Fichier de configuration, au format XML, de votre Build



Maintenant que votre Buil est créée, il vous faut pouvoir la lancer/l'exécuter. Pour cela, faîes un clic droit sur le nom du projet de build, et choisissez "Build Team Project..." (les ... correspondent en fait au nom de votre projet):

Lancement d'une Build


Les options sont normalement pré-chargées depuis le fichier de configuration de votre Build (le fichier qui est au format XML) mais vous pouvez tout de même en modifier changer depuis l'écran qui est apparût:

Lancement d'une Build


Cliquer alors sur "Build" pour lances la construction de la(es) solution(s):

Compilation de la Build


Maintenant, si vous parcourez le répertoire qui stocke le résultat de vos Builds, vous devriez voir celle que vous venez de construire.

X. Conclusions

Team Foundation Server est un excellent outil pour toutes les entreprises qui possèdent des équipes de développeurs travaillant ensemble. Il permet un gain de productivité pour les membres de l'équipe et améliore les temps de développement des applications.
Bref, si vous pouvez l'utiliser, je ne peux que vous le recommander.

Une note toutefois: les produits qui ont été testés sont encore en version BETA. C'est pourquoi vous pouvez être confronté à certains bugs, en particulier sur le Team Explorer (impossibilité de se déconnecter d'un serveur, etc...).
Mais rassurez-vous, cela sera corrigé dans la version finale.

XI. Téléchargements