2010-04-07 10 views
41

Ich verwende Microsoft Visual SourceSafe für die Versionskontrolle. Ich möchte diesen Ansatz ändern und für diese Arbeit neuere Software verwenden. Was sind die Unterschiede zwischen diesen drei Anwendungen? Welches ist besser?Was sind die Unterschiede zwischen TFS, SVN und GIT?

Sind diese Lösungen in Visual Studio integriert?

+0

Können Sie sich für ** besser ** qualifizieren? Besondere Eigenschaften? Allgemeine Usability (ich nehme unter Windows für Sie an)? VS-Integration? – R0MANARMY

+0

Ich meine allgemeine Usability und Integration mit VS. –

+17

Alle von ihnen sind viel besser als VSS, wenn Sie mich fragen. –

Antwort

107

TFS ist eine Application Lifecycle Management-Lösung, SVN und Git sind nur Quellcodeverwaltung.

TFS tut Quellcodeverwaltung sowie Problemverfolgung, Dokumentenmanagement, Reporting, kontinuierliche Integration, virtuelle Labors für die Prüfung usw.

TFS der Source Control & SVN sind zentrale Quelle Steuerung wird Git verteilt.

Es gab viele Diskussionen über Stackoverflow über TFS vs SVN.

TFS ist am engsten in Visual Studio integriert.

SVN hat ein paar Drittanbieter-Optionen für die Integration in Visual Studio und sie sind ziemlich nett, aber nicht so eng integriert wie TFS.

Git hat GitExtensions, was eine geringe Integration in Visual Studio ermöglicht.

+49

+1 für die Angabe der Fakten ohne Meinung. –

+3

Auch: TFS kostet Geld im Voraus. Git macht das Verzweigen und Zusammenführen einfacher, sicherer und "billiger". – Benjol

+10

TFS tötet mich jedes Mal, wenn ich offline arbeiten muss. –

3

Ich kann nur mit Visual Studio-Integration für SVN sprechen. Ich habe sowohl VisualSVN als auch AnkhSVN verwendet. Beide haben eine ziemlich enge Integration und ermöglichen Ihnen, verschiedene Operationen aus dem Solution Explorer-Menü auszuführen, so wie Sie es normalerweise mit VSS getan hätten. Version 2+ von Ankh (eine, die ich gerade benutze) war für mich sehr stabil und besser als die älteren Versionen.

Dies sieht aus wie eine ziemlich detaillierte Diskussion über die Verwendung von Git with Visual Studio.

+0

Ich habe all diese versucht und schließlich immer wieder in die Befehlszeile zurückkehren. Die GUI-Tools fühlen sich unweigerlich wie halbfertige Hack-Jobs an. – kprobst

+1

@kprobst: Die meiste meiner Interaktion mit Ankh ist in Form von Get Latest und Commit, also habe ich die Einschränkungen nicht gespürt. – R0MANARMY

+3

Ich würde Ankh nicht einen halbfertigen Hackjob nennen, es ist in Ordnung. – heisenberg

3

Dies ist zusätzlich zu den anderen Antworten, keine vollständige Antwort als Michael Shimmins die meisten zufrieden, was ich

TFS (besonders 2010) sagen kann, ist unglaublich zugänglich für die Quellcodeverwaltung Techniken implementieren, die Sie schrecklich gewesen wäre hart gedrückt, um mit VSS auszuführen. Verzweigen und Zusammenführen ist viel einfacher mit TFS als mit SVN, um im Laufe der Zeit zu starten und zu folgen. Ich würde das gleiche über Git aus der Perspektive der Benutzerinteraktion sagen, aber diese Tools werden langsam besser.

Git ist ein großartiges Werkzeug, wenn Sie die Anlaufzeit aufwenden und die Techniken, die die Community als Standard annimmt, die Mühe in jedem Versionskontrollsystem wert sind. Sie werden immer noch Konflikte mit SLN- und CSProj/VBProj-Dateien in Teams von> 2 bekommen. Dies ist ein Ergebnis der Art, wie diese Dateien strukturiert und verwaltet werden.

9

Besser ist eine große Diskussion, aber in die gleiche Richtung müssen Sie Kosten einkalkulieren.

SVN ist frei, wo TFS nicht ist. Jedoch; Wenn Sie Ihr Visual Studio über ein MSDN-Abonnement haben und dieses von high enough level ist, erhalten Sie TFS2010 kostenlos über Ihre MSDN-Abonnementdownloads, wenn es freigegeben wird. Dies kann ein Faktor sein, der den Ausschlag gibt.

Wie für die Integration mit Visual Studio können Sie Team Explorer für TFS nicht schlagen. Allerdings habe ich Anhk mit SVN verwendet und das funktioniert auch gut. Ich denke, der Rest davon wurde gesagt :-)

Hoffe das hilft.

3

Die Frage ist eher alt, aber falls jemand darüber stolpert: seit Januar 2013 wurde git in TFS integriert (Ankündigung: http://www.visualstudio.com/en-us/news/2013-jan-30-vso#git support). Das bedeutet, dass das Team jetzt git als Quellcodeverwaltungstool verwenden kann (anstatt, aber nicht neben dem "integrierten" TFS Versionskontrollsystem), während der Rest von TFS weiterhin für Aktivitäten wie kontinuierliche Integration, Probleme verwendet wird Tracking und so weiter.

Original-Diskussion auf MSDN: http://blogs.msdn.com/b/visualstudioalm/archive/2013/01/30/getting-started-with-git-in-visual-studio-and-team-foundation-service.aspx

Stackoverflow hat eine große Reihe von relevanten Diskussionen (https://stackoverflow.com/search?q=tfs+git) nicht spezifisch etwas zeigen.

Verwandte Themen