web-dev-qa-db-fra.com

Git et Team Foundation Server

Mise à jour: Je n'utilise plus TFS. Mais d'après les commentaires, je peux voir que git-tfs est évidemment la voie à suivre de nos jours.

Quelqu'un a-t-il déjà utilisé Git en tant que solution hors ligne pour Team Foundation Server?

Pour Subversion, vous pouvez utiliser git-svn pour conserver un dépôt privé avec un backend svn.

J'ai essayé d'utiliser SvnBridge et git-svn pour travailler avec TFS. Au début, cela semblait prometteur, mais Visual Studio reconnaît que la solution est sous contrôle de version TFS et interfère pendant la validation.

Y a-t-il d'autres façons de combiner ces deux?

57
Christian Deger

J'ai commencé à travailler sur un outil appelé git-tfs, similaire à certains égards à git-svn.

https://github.com/git-tfs/git-tfs

84
Matt Burke

Une nouvelle offre de Microsoft: Git-tf

Annonce: Annonce de l'intégration de Git avec TFS

Télécharger: ici

Source (CodePlex): ici

14
vossad01

Je suis sûr que c'est possible, mais ce sera très rube goldberg-ian dans sa construction et mènera probablement à plus de douleur que de plaisir. Je suggère de choisir un système de contrôle de source et de l'accompagner.

Si vous avez besoin d'un véritable support hors ligne, git est génial, mais le support Windows est encore un peu floconneux.

8
jonnii

Nous avons simplement décidé de faire cela au travail. Voici un article de blog sur la façon dont nous l'avons fait.

http://blog.lozanotek.com/archive/2009/10/20/git-svn_SvnBridge_and_TFS_Source_Control.aspx

Je viens de trouver ce projet sur Github aussi .. cela pourrait fonctionner mais je ne l'ai pas encore essayé.

http://github.com/spraints/git-tfs

5
Rob

Je peux vous dire que c'est possible ...

Vous trouverez également ici quelques détails mineurs sur une personne ayant la même expérience: http://blog.zobie.com/2009/04/using-git-to-avoid-problems-with-tfs/

3
gbraad

TFS prend en charge git maintenant: tfs news git support

2
Octavio Licea

Légèrement hors sujet par rapport à votre question, mais j'ai écrit un script Powershell qui convertit un référentiel TFS en un référentiel Git. Cela pourrait aussi être utile.

Voir mon dépôt Github pour le script

2
Sardaukar

Brian Harry passe en revue quelques détails sur nouvelle intégration des référentiels Git dans Team Foundation Service ainsi que sur Team Foundation Server 201 . Il fait valoir quelques points intéressants qui sont particulièrement importants pour l'entreprise et en général pour les équipes soucieuses d'avoir un hébergement solide de leurs dépôts Git:

Facilité d'installation - Nous avons maintenant fait de l'installation de Git une partie transparente de l'installation de TFS. Il n’y a rien à rechercher et à télécharger. Rien à installer et configurer séparément. Vous installez simplement TFS 2013 et bénéficiez automatiquement du support Git.

Assistance et service - Parce que nous l'expédions, nous le soutenons. Cela signifie que si vous rencontrez un problème, vous pouvez contacter notre support et obtenir de l'aide. Vous recevrez des mises à jour de sécurité, des correctifs, des mises à jour régulières et plus encore de la même manière que vous avez l'habitude de les obtenir. Nous travaillerons dur pour nous assurer que votre serveur TFS est sain et à jour, quelles que soient les fonctionnalités que vous utilisez.

Haute disponibilité - Depuis le début, nous nous efforçons de rendre TFS compatible avec la haute disponibilité. Notre support Git ne fait pas exception - nous prenons en charge les mêmes choses auxquelles vous êtes habitué avec TFS - l'équilibrage de charge et le clustering pour garantir que votre serveur continuera à fonctionner malgré les pannes matérielles et logicielles, géoréplication si vous avez besoin d'être certain que vous maintenez la continuité des activités même en cas de pannes régionales, la sauvegarde et la restauration en ligne en tant que partie intégrante de TFS afin que vos politiques de sauvegarde et de restauration de niveau entreprise existantes (journal complet, incrémentiel et des transactions) continuent de fonctionner (vous offrant un bon RTO et RPO).

Scale - Comme avec TFS, vous pouvez faire évoluer votre installation TFS de manière transparente en fonction de vos besoins. Cela inclut la mise à l'échelle à la fois du niveau application et du niveau de stockage car vous devez ajouter de la capacité supplémentaire.

Facilité de gestion - Notre implémentation Git est entièrement intégrée à TFS afin que toutes vos politiques de gestion puissent continuer inchangées - gestion des comptes de service, migration de matériel, logiciel correctifs, sauvegarde et restauration, surveillance, gestion des autorisations et plus encore.

Authentification intégrée - Notre support Git intègre pleinement l'authentification Windows Active Directory afin que tout votre contrôle d'accès, audit, etc. puisse être effectué sur une infrastructure cohérente et gérable . Dans ce cadre, toutes les modifications sont vérifiées par rapport à une identité autorisée vous assurant de savoir qui a effectué chaque modification.

Autorisations améliorées - Nous avons créé (et construisons) un ensemble de fonctionnalités supplémentaires de gestion des référentiels et des autorisations qui permettent aux administrateurs de "contrôler le chaos". Le premier ensemble comprend la possibilité de gérer les référentiels (créer, supprimer, renommer, etc.) et les autorisations au niveau du référentiel qui contrôlent les autorisations de lecture, d'écriture et d'administration. Nous incluons également une quatrième autorisation qui résout un problème clé que de nombreux clients ont rencontré avec Git - "Force Push", qui permet effectivement aux utilisateurs de "modifier l'historique". Bien que nous activions cette capacité, nous permettons également aux administrateurs de la désactiver avec une autorisation. Nous travaillons également sur des autorisations supplémentaires maintenant - comme les autorisations au niveau de la branche qui permettront aux administrateurs de contrôler qui peut créer, supprimer et utiliser des branches individuelles. De cette façon, les développeurs peuvent utiliser la création de branches comme ils le souhaitent localement, mais, lorsqu'ils vont repousser vers le référentiel principal, ils sont contraints par les stratégies configurées par l'administrateur.

Intégration ALM - Et, bien sûr, nous intégrons pleinement Git dans les flux de travail TFS ALM - suivi des éléments de travail, automatisation de la construction, création de rapports, révision du code et plus. Toute cette intégration n'est pas encore terminée, mais nous allons l'étoffer dans les mises à jour de 2013 et, lorsque nous aurons terminé, nous devrions avoir une parité totale sur les capacités d'intégration ALM entre Team Foundation Version Control et Git Version Control.

Localisation - Comme le reste de notre produit, nos capacités Git seront localisées dans les mêmes langues que le reste de VS, ce qui le rend plus accessible par certaines parties du monde non anglophone.

Source: Repos Git de qualité entreprise

2
Ed Blankenship

Je suis d'accord avec Matt Burke a dit, je pense que http://git-tfs.com est votre choix. Mais il y a un inconvénient:

  • vous devez vous engager 2 fois, une fois dans VS et une fois dans la console Git

  • si vous souhaitez lier un ensemble de modifications à un élément, vous devez en savoir plus sur l'instruction git-tfs (rcheckin, ...)

0
Tan Le