web-dev-qa-db-fra.com

Comment faire en sorte que TFS 2010 détecte les modifications apportées aux fichiers en dehors de Visual Studio?

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?

111
asmo

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. 

47
Edward Thomson

TFS a 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 contenant les modifications et choisissez Comparer
  3. Sélectionnez les fichiers à réconcilier (appuyez sur CTRL+A sélectionner tous les fichiers)
  4. Cliquez sur le bouton Réconcilier
  5. Définissez les options dans la boîte de dialogue Rapprocher les différences de dossiers . Assurez-vous que Les fichiers qui n'ont pas de modifications en attente sont définis sur Check Out
  6. Cliquez sur OK
  7. Si vous avez des modifications locales, le dialogue Check Out sera affiché. Définir le type de verrou préféré
  8. Cliquez sur Check Out

Reconcile Folder Differences

Voir aussi: Rapprocher les différences entre les dossiers

149
mhu

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.

35
Adam Batkin
*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é.

14
hugbe8

Essaye ça. C'est une sorte de solution de contournement, mais cela fonctionne:

  1. apporter des modifications en dehors de Visual Studio
  2. accédez à Visual Studio et ouvrez l'Explorateur de contrôle de code source.
  3. clic droit sur le dossier> "Check Out for Edit" > "Check Out"
  4. clic droit sur le même dossier> "Annuler les modifications en attente ..." > "Annuler les modifications" > " Non à tout "

C'est tout. Les changements sont visibles maintenant.

7
Alexander G

Il existe également une autre solution permettant à TFS de déterminer les fichiers 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 Accéder àGoOnline Button Icon)

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:

  • Utilisez le GoOffline Extension - très simple et efficace.
  • Si des informations d'identification TFS vous sont demandées lors de l'ouverture de la solution (sans autorisation automatique de domaine), n'entrez pas les informations d'identification. La solution s'ouvrira hors ligne et vous vous identifierez après avoir appuyé sur le bouton Go Online.
  • (solution extrême) Débranchez votre câble réseau. Ouvrez la solution. Connectez le câble réseau.
4
Cristian Lupascu

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.

3
CheckRaise

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.

1
user2572682

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.

0
Graham Laight