L'équipe Foundation Server (TFS) garde une trace de sa copie locale dans un répertoire caché appelé $TF. Lorsque vous lancez "Obtenir la dernière version", TFS regarde dans ce dossier pour voir si j'ai la dernière copie ou non. Si c'est le cas, il ne téléchargera pas la dernière copie. Peu importe si vous avez le fichier original ou non. En fait, vous pourriez avoir supprimé le dossier entier (comme dans mon cas) et TFS ne récupérera pas la dernière copie car il ne regarde pas dans le fichier réel mais dans le répertoire caché où il enregistre les modifications. Le défaut de ce design est que tout ce qui est fait en dehors du système ne sera pas enregistré dans TFS. Par exemple, vous pourriez aller dans l'explorateur Windows, supprimer un dossier ou un fichier et TFS ne le reconnaîtra pas. Il sera totalement aveugle. Au moins, je m'attendrais à ce que Windows ne vous permette pas de supprimer ce fichier, mais c'est le cas!
Une façon d'imposer la dernière copie est de supprimer manuellement le dossier $TF caché. Pour ce faire, allez dans l'invite de commandes et naviguez jusqu'au dossier racine où votre projet a été vérifié et lancez cette commande
rd/s $tf // supprimer le dossier $TF et tout ce qu'il contient
Si vous voulez simplement vérifier le dossier caché, vous pouvez le faire en utilisant
dir /ah // afficher les fichiers et dossiers cachés
Remarque : Si vous le faites, tf pensera que vous n'avez pas de copie locale même si vous l'avez dans les fichiers et il synchronisera tout à nouveau.
Attention : Utilisez cette méthode à vos propres risques. Veuillez ne pas l'utiliser sur un travail critique.
0 votes
La chose la plus stupide que je vois est que "Obtenir la dernière version" ne fait rien même lorsque le fichier local a été supprimé pour une raison quelconque. J'aurais pensé que vérifier au moins que le fichier local existe était une chose assez évidente à faire. Mais pourquoi il ne peut pas simplement comparer le horodatage de chaque fichier sur le serveur avec le moment où vous avez fait la dernière récupération (qui pourrait être stockée quelque part localement) me laisse perplexe.
0 votes
Il s'agit d'un commentaire.
0 votes
C'est septembre 2020. Je suis ici pour la même raison que la plupart des gens. Obtenir la dernière version ne donne pas la dernière version. JE SUPPRIME l'intégralité du dossier de solution ! Fermez VS, nettoyez la corbeille, redémarrez votre téléphone. Ouvre le fichier sln depuis l'explorateur de contrôle de source TFS. Malgré cela, je continue à rencontrer des fichiers et des projets qui ne fonctionnent pas / des fichiers manquants.