Skip to content

Git auf ein SVN Repository aufsetzen

Mittlerweile benutze ich GIT schon seit ca. 2 Wochen und werde immer sicherer mit dessen Mechanismen. GIT bietet einfach geniale Features, gerade bei der Zusammenarbeit z.B. in Open Source Projekten wie Serendipity. Das viel einfachere Branching und Rebasing auf dem online Branch klappt einfach wunderbar und löst sehr elegant einige Probleme, die man mit SVN und CVS bei der gemeinsamen Arbeit an einem Code hat.

Viele Open Source Projekte werden jedoch noch in einem SVN Repository gewartet. So programmiere ich mir gerade aus gegebenen Anlass einige Fixes in den Wordpress für Android Client, der als Open Source in einem SVN Repostitory verfügbar ist.

Inzwischen möchte ich aber auf die Vorzüge von GIT nicht mehr verzichten. Ich möchte einen eigenen Branch verwalten, den ich immer wieder auf die Änderungen in dem SVN Repository aufsetze (rebase), wodurch ich auf einfache Weise Änderungen beider Repositories immer in meinem Client Code habe.

Für diesen Anwendungsfall gibt es eine Erweiterung zu GIT: git svn. Diese Erweiterung baut lokal ein GIT Repository auf Grundlage eines SVN Repositories auf, mit allen Möglichkeiten, die man von GIT so kennt. Es wird ein git-svn Branch lokal angelegt, der mit SVN über git svn Befehle synchron gehalten werden kann. Auf diesen setzt ein lokaler master Branch auf, der mit rebase auf git-svn immer die neuesten Änderungen des SVN Repositories enthält und auf den wiederum eigene Feature Branches aufgesetzt und rebased werden können.

Wie das funktioniert, ist in diesem Artikel recht ausführlich beschrieben, ich fasse mal die für diesen Anwendungsfall wichtigen Schritte zusammen.

"Git auf ein SVN Repository aufsetzen" vollständig lesen

EGit: Eclipse mit Git benutzen

Ich gebe zu, GIT ist für mich noch Neuland. Ich verstehe die groben Prinzipien, ich weiß, dass es sich von SVN und CVS sehr stark (zum Guten hin) unterscheidet und was die größten Unterschiede sind, ansonsten habe ich aber schlicht keine Erfahrung mit Git. Da Serendipity nun seine verteilten Repositories (cvs und svn) nach GitHub umgestellt hat, war das nun ein willkommener Anlass.

Meine Arbeitsweise setzt schon seit Ewigkeiten auf Eclipse auf. Ich bin vor allem Java Entwickler, aber auch für PHP (und anderes) ist das die Entwicklungsumgebung meiner Wahl. Ich bin noch von damals CVS und erst recht SVN mächtige Plugins gewohnt, die mir die Arbeit mit Versionsverwaltungen enorm erleichtern. Sie zeigen an, was sich geändert hat, erledigen das Commit der Neuerungen, holen Updates ab und mergen Änderungen in meinen lokalen Code. Ich hatte mir vor ca. einem Jahr mal angesehen, was Eclipse als Unterstützung für Git anzubieten hat: Was ich vorfand war sehr mau, die Bezeichnung Alpha Status wäre wohl übertrieben gewesen.

Das hat sich enorm geändert! Bei mir auf Arbeit wird bereits immer mehr auf Git zusammen mit Eclipse gesetzt, daher wusste ich bereits, dass das Eclipse Plugin inzwischen offenbar gut zu bedienen ist. Dies ist die Beschreibung, wie ich meine Entwicklungsumgebung aufgesetzt habe und damit meine ersten Änderungen eingecheckt habe.

"EGit: Eclipse mit Git benutzen" vollständig lesen

Subclipse in Eclipse Europa

Ich habe gerade versucht, Subclipse in Eclipse Europa zu installieren. Gar nicht so einfach. Die Installationsanleitung für Subclipse listet 2 Versionen auf, die für Eclipse 3.2+ funktionieren sollen. Die Version 1.4 funktioniert dabei nicht, da eine Referenz auf das Mylyn Plugin in Europa nicht korrekt aufgelöst werden kann.

Benutzt man die Version 1.2 (Update Site: http://subclipse.tigris.org/update_1.2.x), so kann eine Referenz zu "Buckminster" nicht aufgelöst werden. Dies ist jedoch einfach zu beheben: In den Features, die Subclipse installieren will, ist auch das Paket "Buckminster" unter "Integrations (Optional)" gelistet. Wenn man dieses Feature ausknippst, so können alle Abhängigkeiten aufgelöst und Subclipse installiert werden.

tweetbackcheck