web-dev-qa-db-fra.com

Basculer entre le contrôle de source Git et TFS dans Visual Studio

Je suis dans une situation où je dois exécuter à la fois TFS et Git côte à côte. Je devrai basculer entre les deux. Git est installé et configuré pour s'exécuter localement. TFS est exécuté sur un serveur d'entreprise. Comment basculer entre les deux environnements dans Visual Studio 2013?

Je suis prêt à passer à VS 2015 si l'intégration de git s'est améliorée.

VS a d'abord détecté Git, puis est passé à ce contrôle de code source dans "Team Explorer". Je suis tombé sur un moyen de passer à TFS (dont je ne me souviens pas) et maintenant je ne sais pas comment revenir à Git.

Si vous vous en souciez, je dois exécuter Git côte à côte avec TFS parce que je ne suis pas autorisé à créer des branches dans TFS et qu'il n'y a aucun moyen de jouer avec les commits dans le tronc principal ou de gérer le numéro N des étagères. Je vais utiliser des branches fonctionnelles

16
P.Brian.Mackey

Si vous souhaitez utiliser un espace de travail TFS et également utiliser GIT, vous pouvez basculer entre eux à l'aide de Team Explorer. Frappez l'élément "plug" en haut de l'écran et vous pouvez basculer entre eux là-bas. La capture d'écran est de VS 2015 mais l'interface utilisateur n'a pas beaucoup changé depuis 2013

Team Explorer

Si vous voulez utiliser git exclusivement sur votre machine locale et que vous poussez vers TFS sur le serveur, jetez un œil à " git-TF "

Vous pouvez cloner votre "Trunk" de TFS vers un référentiel git local, travailler exclusivement dans git et utiliser des branches de fonctionnalités, etc. Lorsque votre code est prêt à être renvoyé vers Trunk, vous pouvez rebaser et pousser.

git-tf clone http://myserver:8080/tfs/mycollection $/TeamProjectA/Trunk

Apportez des modifications au fichier dans le référentiel Git

git commit -a -m "commit one" (valider les modifications localement)

Apportez plus de modifications

git commit -a -m "commit two"

git-tf pull --rebase

git-tf checkin

10
James Reed

Ce n'est pas la solution la plus élégante, mais elle est simple et ne nécessite pas d'outils tiers (en supposant que vous avez déjà un shell git) ... Je renomme simplement le dossier .git en quelque chose d'autre avant de démarrer le studio et il utilisera TFS. Dès que la solution est ouverte, vous pouvez ensuite renommer le dossier git en ".git" et faire tout ce qui concerne git via un shell bash.

mv .git git
(open the solution in VS)
mv git .git

À ce stade, vous pouvez vous connecter/retirer en utilisant TFS via IDE, et pousser/tirer en utilisant git via le shell.

REMARQUE: Une chose que vous devrez faire attention est si de nouveaux fichiers sont ajoutés du côté git (c'est-à-dire via un pull git) Studio les listera sous "Modifications exclues> Détecté: ### ajoute" afin que vous doivent les "Promouvoir".

6
Tom

J'ai eu de gros problèmes pour passer de GIT à TFS.

Même essayer d'ouvrir mon projet échouerait simplement ... aucune des solutions ou de ses projets ne se chargerait.

En fin de compte, la seule chose qui a fonctionné a été de déplacer manuellement le dossier (caché) .git ailleurs. Ce n'est qu'alors que je pouvais ouvrir le projet via TFS et voir les éléments du menu contextuel TFS convivial ("Archiver", plutôt que "Valider", etc.)

2
Mike Gledhill

J'ai eu ce problème car au travail, nous utilisons TFS et je préfère utiliser git pour le suivi local des fichiers. (J'espère que la société déménagera bientôt avec quelques pressions de ma part ...)

Ce que j'ai trouvé fonctionne, c'est de créer ces alias. alias degit = "mv .git git" alias regit = "mv git .git"

`` dégitrez '' votre repo pour ainsi dire, avant de lancer VS2015 avec TFS défini comme contrôle de source, une fois tout chargé, `` regit '' votre repo. Semble bien fonctionner avec moi. Encore une fois cependant, je n'utilise pas git pour pousser vers une télécommande. Toujours en utilisant TFS.

2
Arthur Bowers