Homebrew und crlf
Git ist ein verteiltes Versionskontrollsystem. Soweit so gut. Genauer werde ich in diesem Artikel nicht darauf eingehen, schreibe aber seit einiger Zeit an einer Kurzeinführung.
Nun will es der Zufall, dass ich Git für einige Webprojekte einsetze. Auf diversen Seiten, so auch auf Github gab es den Hinweis, in der Config folgendes Einzutragen:
Dies verhindert mögliche Probleme mit Windowsusern, wenn deren Editor mit LF Zeilenenden (Standard unter Unix und Linux Systemen, und eben auch unter Mac OS X) nicht zurecht kommt. Da viele Editoren unter Windows LF automatisch in CRLF (Windows Zeilenendsteuerzeichen) umwandeln, würde dies Änderungen in jeder Zeile einer geänderten Datei ergeben.
Daher solle man doch lieber gleich mit CRLF arbeiten, wenn ggf. Windowsuser mit ins Repository pushen.
So weit so gut. Bis vor einiger Zeit funktionierte das auch alles wunderbar, und funktioniert auch immer noch.
Allerdings macht das mit Homebrew Probleme. Homebrew ist ein Packetmanager für Mac OS X, ähnlich wie MacPorts oder Fink. Homebrew ist wesentlich schlanker als oben genannte Alternativen und setzt wenn möglich auf Versionen von Programmen, die bereits standardmäßig auf OS X vorhanden sind.
Auf jeden Fall hat der Aufruf von ‘brew’ mir folgende Fehlermeldung eingebracht:
Ich konnte mir erst keinen Reim darauf machen. Was ist passiert? brew hat beim Updaten sich selbst überschrieben und die Zeilenendsteuerzeichen von LF auf CRLF geändert und sich damit selbst ins Nirvana geschossen, da es Ruby nicht mehr aufrufen konnte.
Ich habe /usr/local/brew in Textmate geöffnet und neu unter gleichem Namen, jedoch mit LF statt CRLF gespeichert. In der Datei /usr/local/.git/config habe ich noch folgende Zeile eingetragen:
Das überschreibt den Wert aus ~/.gitconfig und verhindert das Umwandeln.
Vielleicht ist es auch einfach Sinnvoll Auto-CRLF nur zu setzen, wenn man es wirklich braucht. Keine Ahnung.
Jedenfalls wollte ich an dem Problem, bzw. dessen Lösung teilhaben lassen, da ich irgendwie keine sinnvollen Ergebnisse ergooglen konnte.
22 Feb 2010 Noch keine Meinung Tweet thisDiesen Post Twittern?
Ich habe mich schon etwas länger gefragt, wie man seinen Besuchern ganz einfach die Möglichkeit bieten kann, einen Post zu twittern. Mittels Parameterübergabe geht das eigentlich ganz einfach:
<?php the_permalink();?> (via @zeidlos)" target="_blank">Tweet this</a>
Dies erzeugt einen Link der den Titel, die URL des Beitrages sowie euren Twitternamen an Twitter übergibt. Klar kann man dafür auch ein tolles Plugin basteln, aber wenn man das mit einer Zeile Code realisieren kann, warum so umständlich.
Dieser Codebaustein sollte am besten im Loop stehen. D.h. z.B. in der page.php, index.php und single.php an folgender oder ähnlicher Stelle:
<?php the_time('d M Y') ?>
<?php comments_popup_link('Noch keine Meinung', '1 Meinung', '% Meinungen', 'commentslink'); ?>
<?php edit_post_link('Edit', ' ', ''); ?>
<a href="http://twitter.com/home/?status=<?php the_title(); ?>
<?php the_permalink();?> (via @zeidlos)" target="_blank">Tweet this</a>
Ich hoffe, das hat euch was gebracht. Wenn ihr den Codeschnipsel benutzen wollt, ändert doch bitte den eingetragenen Twitternamen auf euren. ;)
17 Nov 2009 Noch keine Meinung Tweet this