Comment faire pour que TFS 2010 détecte les modifications apscopes aux fichiers en dehors de Visual Studio?

J’utilise Team Foundation Server 2010 avec Visual Studio 2010.

Chaque fois que je modifie un fichier en dehors de Visual Studio, TFS ne semble pas détecter le changement apporté au fichier et ne m’offre donc pas la possibilité d’enregistrer le fichier après sa modification.

Comment cela peut-il être résolu?

Si vous avez une connexion réseau à votre serveur lorsque vous travaillez en dehors de Visual Studio, il est préférable de vérifier le fichier avant de le modifier, en utilisant le client de ligne de commande tf ou l’intégration du shell de Windows Explorer disponible dans la version TFS Power Tools . (De plus, un nombre croissant d’autres outils ont une intégration TFS qui rend cette opération automatique, mais si vous utilisez simplement le bloc-notes, cela doit toujours être une étape manuelle.)

Bien sûr, il y a beaucoup de fois où vous travaillez et vous n’avez pas de connexion réseau disponible qui vous permet de vérifier les fichiers.

Si vous savez quels fichiers vous avez modifiés, vous pouvez simplement les extraire de Visual Studio, puis vous pourrez les récupérer.

Si vous ne savez pas quels fichiers vous avez modifiés, vous pouvez détecter les modifications en exécutant la commande tfpt online (également tfpt online dans la version de Power Tools). Cela localisera les fichiers modifiés localement et vérifiera ces fichiers depuis le serveur.

TFS dispose d’une commande “Réconcilier” pour cela:

  1. Ouvrez l’ explorateur de contrôle de code source
  2. Cliquez avec le bouton droit sur le dossier avec les modifications et choisissez Comparer
  3. Sélectionnez les fichiers à rapprocher (appuyez sur CTRL + A pour sélectionner tous les fichiers)
  4. Cliquez sur le bouton Réconcilier
  5. Définissez les options dans la boîte de dialog Réconcilier les différences de dossiers . Assurez-vous que les fichiers n’ayant pas de modifications en attente sont définis sur Extraire
  6. Cliquez sur OK
  7. Si vous avez des modifications locales, la boîte de dialog Extraire sera affichée. Définir le type de locking préféré
  8. Cliquez sur Check Out

Réconcilier les différences de dossiers

Voir aussi: Réconcilier les différences entre les dossiers

Cela a fonctionné pour moi, en utilisant les outils élecsortingques TFS:

 tfpt online /adds /deletes /diff /noprompt /recursive directory-name 

(où nom-répertoire est le chemin d’access au répertoire à mettre à jour, sinon il détectera les modifications sur l’ensemble de votre référentiel TFS)

Si vous voulez savoir ce qu’il ferait sans apporter de modifications, vous pouvez le forcer à faire un essai en ajoutant l’option /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 sur une twig et cela m’a beaucoup aidé. Mais il n’y a que de nouveaux fichiers et de nouveaux dossiers à faire manuellement.

Je recommande de créer une twig avant l’opération. Il vous isole l’heure de l’opération.

Remarque: Cette technique effectue également le nettoyage identique des fichiers que TFS a toujours marqué comme modifié.

Essaye ça. C’est une sorte de solution de contournement, mais ça marche:

  1. apporter des modifications en dehors de Visual Studio
  2. aller à Visual Studio et ouvrir l’explorateur de contrôle de code source
  3. Faites un clic droit sur le dossier> “Check Out for Edit” > “Check Out”
  4. Faites un clic droit sur le même dossier> “Annuler les modifications en attente …” > “Annuler les modifications” > ” Non à tous

C’est tout. Les modifications sont visibles maintenant.

Il existe également une autre solution pour que TFS détermine les fichiers qui ont été modifiés en dehors de Visual Studio:

  1. Ouvrez la solution hors ligne
  2. Dans l’Explorateur de solutions, sélectionnez le fichier de solution, puis appuyez sur le bouton Aller en ligne ( Icône du bouton GoOnline )

TFS parsingra automatiquement la solution pour y rechercher les modifications.

La première étape peut être réalisée de différentes manières. Voilà quelque:

  • Utilisez l’extension GoOffline – très simple et efficace.
  • Si vous êtes invité à fournir des informations d’identification TFS lors de l’ouverture de la solution (pas d’authentification automatique du domaine), ne saisissez pas les informations d’identification. La solution s’ouvrira hors ligne et vous vous connecterez après avoir appuyé sur le bouton Go Online
  • (solution extrême) Déconnectez votre câble réseau; Ouvrez la solution Connectez le câble réseau.

Visual Sourcesafe fonctionne comme cela et la manière dont VSS ou TFS remarque le changement est de vérifier 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 édité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 eu ce problème par le passé, lorsque mon Internet était en panne et que je travaillais hors ligne, et que la plupart de mes modifications ne figuraient pas dans Team Explorer.

Procédez comme suit: Dans un premier temps, dans l’explorateur de solutions, sélectionnez le dossier que vous souhaitez reconcilier (pour moi, il s’agissait de mon dossier de solution complet), puis sélectionnez Comparer … entrer la description de l'image ici Cliquez sur Modifier le filtre , et dans la zone de texte du filtre , vous pouvez taper:

 *.cs;!obj\;!bin\;!packages\; 

Dans cet exemple, il inclura dans la recherche uniquement les fichiers C # et les exclura dans les dossiers: bin, obj et packages.

Notez que la colonne Pending Change contient les informations indiquant si le fichier est marqué comme étant édité, ajouté, etc … ou rien …

  • Pour marquer comme modification (lorsque l’élément local a un élément de serveur correspondant), sélectionnez le fichier et choisissez Extraire pour éditer …
  • Pour marquer comme ajout (lorsque l’élément local n’a aucun élément de serveur), sélectionnez le fichier et choisissez Ajouter des fichiers

Enfin, je ne sais pas pourquoi les projets ne sont pas listés ici (après avoir supprimé le filtre * .cs, ne s’affiche toujours pas), reconstruisez la solution pour vous assurer que les projets sont également mis à jour

+ Dans la solution, cliquez sur le bouton de connexion (si apparaît) indiquant Go Online .

J’ai constaté que dans Visual Studio 2015, lorsque le projet était ouvert, Visual Studio a découvert par lui-même que les fichiers avaient été modifiés en externe et les a automatiquement vérifiés sans que je doive faire quoi que ce soit. L’enregistrement normal du projet a permis d’enregistrer les modifications externes.