TFS

De Banane Atomic

Astuces

Get Latest Version

In TFS terms, Get Latest means get the latest version of the files, but ignore the ones that the server thinks is already in your workspace.
Par exemple, si un fichier à été supprimé, il ne sera pas téléchargé.
Pour contourner ce comportement: Get Specific Version → cocher Overwrite all files even if the local version matches the specific version

Branches

Créer une branche

Clique-droit sur un dossier → Branching and Merging → Branch...

TFS semble copier tous les fichiers lors de la création d'une branche !?

Mettre à jour une branche avec les changements du « trunk »

Clique-droit sur le « trunk » → Branching and Merging → Merge

  • Source Branch → « trunk »
  • Target Branch → la branche à mettre à jour
Il faut faire un Check-in pour envoyer les modifications.

Réintégrer une branche dans le « trunk »

Clique-droit sur la branche → Branching and Merging → Merge

  • Source Branch → la branche qui contient les modifications à réintégrer
  • Target Branch → « trunk »
Il faut faire un Check-in pour envoyer les modifications.

Shelve

Team Explorer → Actions → Find Shelvesets

Commiter les changements sur une autre branche

  1. Créer un shelveset des changements
  2. Créer une nouvelle branche si besoin
  3. tfpt unshelve /migrate /source:"$/MyTeamProject/Main" /target:"$/MyTeamProject/Branch" "Nom du shelveset"

Captures d’écrans des différentes étapes

unable to determine the workspace

Depuis le terminal, se déplacer dans le dossier de la source.

Liens

Afficher l'historique des commits

depuis Source Control Explorer → clique-droit sur un dossier / fichier → View History

L'historique affiché se limite à la branche courante

Comparer 2 commits

Sélectionner les 2 commits (avec shift) → clique-droit → Compare

Historique par utilisateur

Installer l'extension Team Foundation Sidekicks
Tools → Team Foundation Sidekicks → History Sidekick

Savoir qui a modifier quoi dans un fichier

Clique-droit → Source Control → Annotate

Créer un nouveau Team Project

View → Team Explorer → Liste déroulante → Projects → New Team Project...

Créer une branche Main et Dev

  • Clique-droit → New folder → Main
  • Check In
  • Clique-droit → Branching and Merging → Convert to Branch
  • Clique-droit → Branching and Merging → Branch → Dev

Forbidden Pattern Policy

Team Explorer → Settings → Source Control → Check-in Policy

Microsoft Visual Studio Team Foundation Server 20xx Power Tools

Permet l'intégration dans Windows Explorer: icônes et menu contextuel.

Ligne de commande

C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\TF.exe

Historique complet (de la solution)

Dos.svg
tf history D:\Dossier\de\le\solution /recursive

Supprimer les fichiers non-versionnés

Dos.svg
tfpt treeclean /recursive /exclude:*.suo,*.user

Workspaces

server workspaces

Pour modifier un fichier: Checkout / Edit / Checkin
Les fichiers non-modifié sont en mode read-only

local workspaces

Pour modifier un fichier: Edit / Merge / Commit (comme avec SVN)
C'est le workspaces par defaut dans TFS 2012

git

Permet de travailler offline
Disponible dans TFS 2013 et Visual Studio 2013

Structures des dossiers

  • Main (branch)
    • Fichiers *.sln
    • Source
      • MonProjet
        • MonProjet.csproj
    • Build (build output binaries)
    • Docs
    • Tests
  • Development
    • FeatureBranch1 (branche du Main)
  • Releases
    • Release1