Subversion vs. Git

quarx

Brauner Matapfel
Registriert
17.04.05
Beiträge
8.444
Für ein plattformübergreifendes Projekt (Entwicklung zumindest unter OS X und Linux/Unix) schaue ich mich gerade nach einem geeigneten Versionskontrollsystem um. Ich bin CVS gewöhnt, würde aber gerne auf Subversion oder Git umsteigen. Kennt sich jemand mit Vor-/Nachteilen, speziell unter OS X, aus? Allgemeines könnte ich ja hier nachschlagen. Wie ist es mit der Anbindung an IDEs wie Xcode?
 

MacApple

Schöner von Bath
Registriert
05.01.04
Beiträge
3.652
Xcode hat Unterstützung für Subversion drin, für Git nicht. Git kenne ich bisher nur vom Namen, kann dazu also nichts sagen.

MacApple
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
AFAIK ist es einfacher, svn "zu" zu machen, d.h. die Kontrolle über was Nutzer dürfen und nicht-dürfen soll angeblich unter git nicht so gross sein.

In der Firma verwender wir svn.

Für OpenSource Projekte habe ich jetzt mal ein git Repository angelegt

Alex
 
  • Like
Reaktionen: quarx

Pii

Rheinischer Krummstiel
Registriert
25.06.07
Beiträge
383
Ich würde als Anregung noch Mercurial in den Raum werfen.
Vergleichen kann man die z.B. hier VCS Comparisation
 

Pii

Rheinischer Krummstiel
Registriert
25.06.07
Beiträge
383
Zuletzt bearbeitet:
  • Like
Reaktionen: quarx

The-Kenny

Transparent von Croncels
Registriert
22.05.08
Beiträge
307
Ich würde zu Git tendieren.

SVN benötigt immer Server, ist im Vergleich wirklich *arschlahm*, und macht einfach keinen Spaß.

Bei Git hat man immer das gesamte Repository lokal, und kann es - optional - auf einen Server pushen (Als Hoster empfehle ich Github).
Man kann ein paar Sachen testen, ins lokale Repository pushen, und das ganze auch *offline*.
Bei SVN ist immer eine Verbindung zum Server vorausgesetzt.

Ein weiterer (Pseudo-)Vorteil ergibt sich aus dem verteilten Prinzip von Git.
Stellen wir uns vor, der Server mit dem SVN-Repository erleidet einen Festplattenschaden - ByeBye allen Änderungen. Zwar hat man zuhause auf dem Rechner noch den Code, aber das gesamte Repository ist verloren.

In Git hat jeder User lokal die gesamte History. Es ist kein Problem wenn der Server zugrunde geht oder ähnliches. Man kann einfach zu einem neuen Hoster wechseln und alles pushen - alles ist genau wie vor dem Crash, inklusive der gesamten History.

Hier noch ein bisschen Git-"Propaganda" (Wirklich zu empfehlen):
http://whygitisbetterthanx.com/

Zu guter letzt gibt es auf Youtube o.ä. noch ein Video namens "Torvalds talks to Git" oder so ähnlich. Dort hält Linux Torvalds (Erfinder von Linux ;)) einen Vortrag über Git.
 
  • Like
Reaktionen: quarx

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Für den professionellen Einsatz halte ich git aber für keine wirkliche Alternative

Alex
 

The-Kenny

Transparent von Croncels
Registriert
22.05.08
Beiträge
307
Was ist denn "professioneller Einsatz"?

Nur, weil XCode keine integrierte Unterstützung dafür anbietet?


Wenn du ein - meiner Meinung nach - sehr professionelles, mit Git gehostetes Projekt ansehen möchtest, schau dir den Linux Kernel an ;)
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Was ist denn "professioneller Einsatz"?

Nur, weil XCode keine integrierte Unterstützung dafür anbietet?


Wenn du ein - meiner Meinung nach - sehr professionelles, mit Git gehostetes Projekt ansehen möchtest, schau dir den Linux Kernel an ;)

Mit "professionell" meine ich "kommerziell" und mit ordentlichen Zugangsbeschränkungen.

Alex
 

quarx

Brauner Matapfel
Registriert
17.04.05
Beiträge
8.444
Vielen Dank schon mal für die Diskussion! Bei meinem Projekt handelt es sich um eines aus dem universitären Bereich, das wahrscheinlich auf Open Source hinauslaufen wird (ca. 100-200k Zeilen C++, eine Handvoll Entwickler). Durch die Integration in Xcode und Netbeans tendiere ich beim VCS momentan eher zu svn als zu git.
 

quarx

Brauner Matapfel
Registriert
17.04.05
Beiträge
8.444
Meine Entscheidung svn vs. git ist noch nicht gefallen. Wenn ich mir diesen Rant hier so anschaue (und das hier höre), werde ich wohl nochmal nachdenken müssen: :-D

[yt]4XpnKHJAok8[/yt]

Eine Frage: Wie eingeschränkt sind denn die Zugangskontrollmöglichkeiten unter git? Ich würde beim fraglichen Projekt zwar an verteilten Standorten arbeiten wollen, den Code aber nicht für die Welt freigeben. Also Zugriff via ssh? "Einfach nicht pullen von User xyz" wäre keine Alternative.
 

Bananenbieger

Golden Noble
Registriert
14.08.05
Beiträge
25.515
Ein weiterer (Pseudo-)Vorteil ergibt sich aus dem verteilten Prinzip von Git.
Stellen wir uns vor, der Server mit dem SVN-Repository erleidet einen Festplattenschaden - ByeBye allen Änderungen. Zwar hat man zuhause auf dem Rechner noch den Code, aber das gesamte Repository ist verloren.
Sagt Dir das Wort "Backup" etwas? ;)
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Meine Entscheidung svn vs. git ist noch nicht gefallen. Wenn ich mir diesen Rant hier so anschaue (und das hier höre), werde ich wohl nochmal nachdenken müssen: :-D

Von "Rants" sollte man sich nicht beeindrucken lassen.

Bisher ist svn weiterhin der Standard in vielen Unternehmen, und git ist auch nur eins von verschiedenen, neuen Versionscontrollsystemen, wie zum Beispiel Mercurial.

git unterscheidet sich vor allem dadurch, dass es die fanatischeren Anhänger hat. Noch nie habe grossarte svn, Mercurial oder VisualSourceSafe Propaganda gelesen, git Propaganda findet man an jeder Ecke.

Damit möchte ich nicht sagen, das es schlecht ist. Ich verwende git für echte OpenSource Projekte, und im Büro so lange svn, bis der Kampf der Neuankömlinge entschieden ist.

Alex
 

quarx

Brauner Matapfel
Registriert
17.04.05
Beiträge
8.444
Und kannst Du mir etwas zur Zugangskontrolle bei git sagen (bis auf RTFM ;))?
 

below

Purpurroter Cousinot
Registriert
08.10.06
Beiträge
2.858
Und kannst Du mir etwas zur Zugangskontrolle bei git sagen (bis auf RTFM ;))?

Nein, weil ich selbst zu diesem TFM noch nicht ge'R't hab, bzw. noch keinen git server selbst aufgesetzt habe.

Wenn ich aus dem Urlaub zurück bin können wir das gerne mal machen. Bei gitHUB kostet Zugangsbeschränkung Geld, daher habe ich das auch noch nicht gemacht.

Alex
 

quarx

Brauner Matapfel
Registriert
17.04.05
Beiträge
8.444
... wurde weiter oben schon verlinkt. :)
 

Pii

Rheinischer Krummstiel
Registriert
25.06.07
Beiträge
383
Die Frage ob Mercurial oder git, hat sich in den zwei Fällen, wo ich das benutzen muss, primär dadurch entschieden, dass von Mercurial auch eine Windows-Version gepflegt wird, und von git nicht. Zumindest nicht direkt, sondern nur über Cygwin. ttp://www.cygwin.com/