web-dev-qa-db-fra.com

TFS crée un dossier $ tf avec des gigaoctets de fichiers .gz. Puis-je le supprimer en toute sécurité?

J'utilise Visual Studio 2012 avec Microsoft TFS 2012.

Sur l'espace de travail créé sur mon lecteur c:, un dossier masqué $tf est créé. Je soupçonne TFS d'avoir créé ce dossier. Il se cache dans l'espace disque, car la taille actuelle est de plusieurs gigaoctets et représente environ 25% de l'espace disque de la quantité totale de gigaoctets nécessaire pour l'espace de travail complet. Donc, ce dossier $tf caché est assez énorme.

La structure est comme ça:

c:\workspace\$tf\0\{many files with guid in filename}.gz
c:\workspace\$tf\1\{many files with guid in filename}.gz

Est-ce que quelqu'un sait si je peux supprimer ce dossier $tf en toute sécurité ou s'il est absolument nécessaire de suivre les modifications dans l'espace de travail? 

39
Nico Lubbers

TFS conserve un hachage et des informations supplémentaires sur tous les fichiers de l'espace de travail afin de pouvoir effectuer le suivi des modifications pour les espaces de travail locaux et détecter rapidement les modifications apportées aux fichiers. Il contient également la ligne de base compressée pour vos fichiers. Les fichiers binaires et les fichiers déjà compressés vont encombrer un peu d’espace. Les fichiers .cs simples doivent rester très petits (en fonction de la taille de votre cluster FAT/NTFS).

Si vous souhaitez vous en débarrasser, définissez le type d'espace de travail sur un espace de travail serveur, , mais perdez les avantages des espaces de travail locaux .

La suppression de ces fichiers ne sera que temporaire puisque TFS forcera leur recréation dès que vous effectuerez une opération Get.

Vous pouvez réduire la taille de ce dossier en procédant comme suit:

  • Créez de petits espaces de travail ciblés (récupérez uniquement les éléments dont vous avez besoin pour effectuer les modifications nécessaires)
  • Cloak folder, exclure les dossiers contenant des éléments inutiles. Surtout les dossiers contenant beaucoup de gros fichiers binaires
  • Placez vos dépendances dans les paquets NuGet au lieu de les vérifier dans le contrôle de code source.
  • Placez votre espace de travail TFS sur un lecteur avec une petite taille de cluster NTFS/FAT (une taille de cluster de 64 Ko augmentera considérablement la quantité d'espace disque requise si vous ne disposez que de fichiers de 1 Ko.

Pour configurer un espace de travail serveur, modifiez le paramètre masqué dans la section relative aux paramètres avancés de l'espace de travail: enter image description here

54
jessehouwing

La réponse simple : J'ai supprimé les fichiers $ tf une fois: le résultat net est que les fichiers récemment ajoutés sont apparus dans les modifications en attente, mais lorsque j'ai modifié un fichier existant, les modifications ne figuraient pas dans les modifications en attente. Je ne recommanderais donc pas de supprimer ce dossier.

7
Niels

Pour répondre à la question initiale, la réponse est oui. Toutefois, pour que TFS puisse suivre les modifications, il devra être recréé, même si le nombre de dossiers est réduit et que l’espace disque est beaucoup plus petit. Pour faire ça:

  1. Commencez par supprimer tous les dossiers tf $ présents dans votre dossier d’espace de travail actuel. 
  2. Ensuite, déplacez tout le contenu restant du dossier d'origine dans un autre dossier vide, de préférence sur un autre lecteur.
  3. Effectuez un "Get last" dans le dossier d’espace de travail original (maintenant vide) (un seul dossier tf $ sera créé dans ce dossier d’origine).
  4. Maintenant, copiez tout le contenu que vous avez déplacé dans le dossier de sauvegarde au-dessus des résultats "Obtenir le dernier résultat" dans le dossier de l'espace de travail d'origine.

En effectuant ces étapes dans cet ordre, vous obtiendrez les entrées tf $ dont TFS a besoin, mais dans un seul dossier et beaucoup plus compact. les reconnaîtra comme modifications en suspens comme il se doit.

Notre solution Certitude AMULETs C++ contient 72 projets avancés. Nous devons le faire une fois par mois pour que la vitesse de compilation et de recherche soit raisonnable. 

0
Scott Deaver