Nachdem ich anfangs mir nur die Browsing-Funktionalität von Github for Mac anschaute, habe ich nun etwas damit gearbeitet und Änderungen committed und Branches angelegt. Und genau an dieser Stelle bekam ich zunächst einen Riesenschreck. Ich habe nämlich während des Entwickelns gedacht, dass dies doch besser in einem extra Branch aufgehoben wäre und erstellte über Github for Mac einen neuen Branch. Dieser war dann auch erstellt. Meine Änderungen waren allerdings alle verschwunden.

Schaut man sich die genaue Beschriftung an, so sieht man, dass der Branch vom Ausgangs-Branch direkt erstellt wird.

Ich zweifelte dann an meinem Gedächtnis und probierte es mit der Kommandozeile aus. Und siehe da, git selbst übernimmt die geänderten Files in den neuen Branch.

Bug oder Feature?

Also suchte ich nach einer Stelle, an der ich einen Bugreport erstellen konnte, stolperte aber erstmal über die Hilfeseite von Github for Mac.
Dort findet man dann die Lösung:

You’ll notice when branches we perform what we call magic stashing. Any time you have local file changes and switch branches, we’ll save those changes and apply them when you switch back to the branch. This is different than the way the git command line client works — it may take some getting used to.

Okay, das Programm verhält sich also wie designed. Allerdings finde ich es sehr gewöhnungsbedürftig, wenn nicht sogar fraglich, ob eine GUI sich anders verhalten soll als das CLI.

Meine vermissten Änderungen waren in der Tat wieder da, wenn ich in den ursprünglichen Branch zurückkehre.

github ist bekannt als zentrales Angebot, das tausende von freien git repositories hostet. Nicht zuletzt github war für den großen Erfolg des verteilten Versionskontroll-System (DVCS) git mitverantwortlich.

Doch nun hat github einen graphischen Client für git für Mac OS X geschaffen. Damit ist es noch einfacher geworden, mit git zu arbeiten. Auf den ersten Blick macht es einen sehr soliden Eindruck. Im Vordergrund steht natürlich die Verbindung zu github.com selbst. Bedenkt man das Github for Mac kostenlos ist, wird sich zeigen, was dies zum Beispiel für den git-client Tower bedeuten wird.

 

Seit heute ist Tower erhältlich. Es handelt sich dabei um einen grafischen Client für git, der allerdings nur für Mac OS X verfügbar ist.

Leider hat es anscheinend die git-svn Unterstützung nicht in die Version 1.0 geschafft. Dafür gibt es eine Anbindung an GitHub.com. Die Entwickler sind ziehmlich aktiv. So ist heute bereits die Version 1.0.1 veröffentlicht worden. Auch wurden in den letzten Tagen recht häufig beta-Releases veröffentlicht.

Ob man dafür bereit ist, 49,– Euro zu zahlen, kann man nach einer Testphase von 30 Tagen entscheiden. Ich muss gestehen, dass ich den Preis im professionellen Umfeld für angemessen halte. Vergleicht man aber den Preis mit den Preisen von TextMate oder RubyMine, so ist er für einen Privatanwender doch vermutlich zu hoch. Die paar git-Kommandos sind dann auch schnell gelernt.

Andy Jeffries stellt auf seiner Seite 25 Tipps für den Umgang mit git bereit, die sich sowohl an den Anfänger wie auch an die etwas erfahreren Nutzer wenden.

So steigt er (natürlich) damit ein, seine E-Mail Adresse und den Namen für die commit-Meldungen richtig einzustellen. Doch dann dreht es sich gleich ums Branchen und Mergen, dem Lösen von Konflikten etc.

Ich denke, man sollte auf jeden Fall mal querlesen.

Pastie.org leistet gute Dienste, wenn man Code zur Verfügung stellen willen, auf den man sich in News-Postings oder Mails in Mailinglisten beziehen will, aber nicht alles dort posten will. Pastie zeichnet sich dadurch aus, dass es sogar versucht, den Leser mit Syntax Highlightning zu unterstützen. Spätestens aber wenn mehrere Files ins Spiel kommen, wird's kompliziert.

Doch da taucht nun gist.github auf. Es verbindet das leichte Editieren der gepasteten Zeilen mit den Funktionen von git. Der Dienst ist zwar noch nicht ganz fertig. So funktioniert das Zusammenpacken als tar-ball noch nicht. Das stört aber kaum, da man sich ja alles per git-clone herunterladen kann. Ein Beispiel findet man unter http://gist.github.com/2897.

Im github-blog findet sich auch noch eine Videoeinführung bzw. auf neudeutsch Screencast (recht schlechter optischer Qualität).

Git ist das etwas andere Versionverwaltungs-System. Der Platzhirsch Subversion zeichnet sich durch sein zentrales Repository aus. Bei Git kann man auch ohne Verbindung zur Zentrale branchen und mergen. Ist man wieder online, kann man seine Ergebnisse der Welt wieder mitteilen. 

Git wurde von Linus Torvalds als Ersatz für BitKeeper entwickelt und zeichnet sich durch eine minimalistische Oberfläche aus: Für Windows gibt es noch keine schöne Möglichkeit es zu nutzen. Dafür verbreitet es sich unter Linux und MacOS immer weiter.

Daher hier mal eine kurze Zusammenstellung von guten Seiten:

© 2012 JerryWho Suffusion theme by Sayontan Sinha