Git

Immer öfters findet man bei Projekten im Open Source Bereich die Versionsverwaltungssoftware Git. Was ist Git eigentlich und wie ist es im Vergleich zu SVN (Subversion). Git wurde 2005 von Linus Torvalds entwickelt um das bis dahin verwendete System BitKeeper zur Versionsverwaltung des Linux Kernels zu ersetzen, dabei wurden einige Ideen von Monotone verwendet. Git läuft auf den UNIX bekannten Systemen und auch auf Windows. Der Hauptunterschied zwischen SVN, CVS etc. und Git ist, das bei Git nicht ein zentraler Server vorhanden ist, sondern jeder Entwickler eine lokale Kopie inklusive der Versions-History besitzt. Dadurch können Aktionen auch ohne Internet bzw. Verbindung zum Server ausgeführt werden. Der große Vorteil von Git ist das jeder sich eine Kopie ziehen kann und diese erweitern kann ohne das dafür ein eigener Branche notwendig ist. Der offizielle Entwicklungszweig ist meistens der Entwicklungszweig, welcher von den Entwicklern des Projektes verwaltet wird. Sie können dann, wenn gewünscht die Verbesserung von einer beliebigen Person mit ihrem Entwicklungszweig verschmelzen. Git bietet daher mit seiner Einfachheit und Effizientes das ideale Versionsveraltungsprogramm für Open Source. Denn jeder kann sich beteiligen, aber es muss nicht die Entwicklung von jedem berücksichtigt werden und im offiziellen Entwicklungszweig wie bei Subversion statt finden.

This is my only real conceptual gripe with “monotone”. I like the model, but they make it much harder than it should be to have throw-away trees due to the fact that they seem to be working on the assumption of “one database per developer” rather than “one database per tree”. You don’t have to follow that model, but it seems to be what the setup is geared for, and together with their “branches” it means that I think a monotone database easily gets very cruddy. The other problem with monotone is just performance right now, but that’s hopefully not _too_ fundamental. Linus Torvalds

Linus Torvalds bei Tech Talk zum Thema Git : Nützliche Links zu GIT: