J'utilise Team Foundation Server 2010 avec Visual Studio 2010.
Lorsque je modifie un fichier en dehors de Visual Studio, TFS ne semble pas détecter la modification apportée au fichier et ne m'offre donc pas la possibilité de l'archiver après l'avoir modifié.
Comment cela peut-il être résolu?
Si vous avez une connexion réseau à votre serveur alors que vous travaillez en dehors de Visual Studio, il est probablement préférable de vérifier le fichier avant de le modifier, à l'aide du client en ligne de commande tf ou de l'intégration de Windows Explorer Shell. disponible dans TFS Power Tools release. (De plus, un nombre croissant d'autres outils ont une intégration TFS qui rend cela automatique, mais si vous utilisez simplement le Bloc-notes, cela doit toujours être une étape manuelle.)
Bien sûr, il arrive souvent que vous travailliez sans disposer d’une connexion réseau vous permettant d’extraire les fichiers.
Si vous connaissez les fichiers que vous avez modifiés, vous pouvez simplement les extraire à partir de Visual Studio, puis vous pourrez les archiver.
Si vous ne connaissez pas les fichiers que vous avez modifiés, vous pouvez détecter les modifications en exécutant la commande tfpt online
(qui fait également partie de la version de Power Tools). Cela localisera les fichiers qui ont été modifiés localement et extraira ces fichiers du serveur.
TFS a une commande "Réconcilier" pour cela:
Voir aussi: Rapprocher les différences entre les dossiers
Cela a fonctionné pour moi, en utilisant les outils électriques TFS:
tfpt online /adds /deletes /diff /noprompt /recursive directory-name
(où nom-répertoire est le chemin du répertoire à mettre à jour, sinon les modifications seront détectées dans l'ensemble de votre référentiel TFS)
Si vous voulez savoir ce qu’il ferait sans qu’il effectue réellement des modifications, vous pouvez le forcer à faire un essai sur piste en ajoutant le commutateur /preview
.
*1- make changes outside of Visual Studio
2- go to Visual Studio and open Source Control Explorer
3- right click on the folder > "Check Out for Edit" > "Check Out"
4- right click on the same folder > "Undo Pending Changes..." > "Undo changes" > "No to All"*
J'ai testé cette solution de contournement sur une branche et cela m'a beaucoup aidé. Mais il n'y a que les nouveaux fichiers et les nouveaux dossiers qui doivent être créés manuellement.
Je recommande de créer une branche avant l'opération. Il vous isole le moment de l'opération.
Remarque: Cette technique effectue également le nettoyage identique des fichiers que TFS marque toujours comme modifié.
Essaye ça. C'est une sorte de solution de contournement, mais cela fonctionne:
C'est tout. Les changements sont visibles maintenant.
Il existe également une autre solution permettant à TFS de déterminer les fichiers modifiés en dehors de Visual Studio:
TFS analysera automatiquement la solution à la recherche de modifications ultérieures.
La première étape peut être réalisée de différentes manières. Voilà quelque:
Visual Sourcesafe fonctionne également de la même manière. Pour que VSS ou TFS remarque le changement, vous devez extraire le fichier une fois dans Visual Studio.
Ouvrez le contrôle de code source et accédez à votre dossier TFS. Cliquez avec le bouton droit sur le dossier et choisissez «Comparer».
Notez que vos fichiers modifiés apparaissent en rouge.
Je trouve que c'est mieux que tfpt online
qui vous permet également d'obtenir des fichiers qui ne sont pas en lecture seule et qui ne sont pas édités.
J'ai constaté que dans Visual Studio 2015, lorsque le projet était ouvert, Visual Studio avait découvert par lui-même que les fichiers avaient été modifiés de l'extérieur, et les avait automatiquement extraits sans que je ne fasse rien. En archivant le projet normalement, les modifications externes ont été enregistrées.