Ich wollte nur [...] und dann ist das Universum explodiert.

Projects
Books
Archive
About









    Permalink
  1. Redmine | Git Bare Repository Workaround

    Die letzten beiden Tage habe ich mich etwas mit Redmine beschäftigt. Das Webinterface für Versionskontrollsysteme hat allerdings eine kleine Macke. Zumindest ist das mein Verständnis des Umstands.

    Git-Repositories sind in Redmine nur über Working Copies einzulesen. Der gute Stil (und gitolite) stellt serverseitige Git-Repositories als Bare Repos dar. Bare Repos sind im Grunde nur das, was das .git/ Verzeichnis in jeder Working Copy darstellt. Es befinden sich also keine Klartext Files darin.


    Creative Commons by Impact Tarmac

    Diese Bare Repos lassen sich in Redmine aber nicht hinzufügen. Ob es einfach technisch nicht machbar ist, oder eine Macke seitens Redmine kann ich nicht ausmachen. Fakt ist allerdings, dass ich momentan dazu gezwungen bin Working-Copies für Redmine vorzuhalten.

    Ein bisschen Dokumentation zu lesen hat mich da schon um einiges weiter gebracht. Es gibt unter der Redmine Community anscheinend zwei verbreitete Lösungsansätze.

    • Cronjob der alle heilige Zeit auf Änderungen prüft
    • Hook in Bare Repos einfügen, welcher auslöst wenn gepushte Änderungen vorliegen

    Kurz: Ich entschied mir für die zweite Lösung. Um Ressourcen zu sparen. Oder weniger Cronjobs laufen zu haben. Erschien mir effizienter.

    Hook für Bare Repo

    In Hook-verzeichnis wechseln. Beispielsweise: /home/git/repositories/repo1.git/hooks/. Richtigen Hook auswählen. post-recieve führt Skripte aus, welche _nach_ dem erhalt von Commits ausgeführt werden.  Das Skript sieht vor, das ServerRepo an einen zentralen Sammelpunkt auszuchecken, Rechte anzupassen und für Redmine schreibbar zu machen.

    Werden jetzt neue Commits gepushed, wird automatisch ein neues Repo gecloned und die Änderungen sind sofort in Redmine ersichtlich.


  2. Permalink
  3. bash-it | n0qorg theme und git_info

    Um die Entwicklung des Bash Community Frameworks bash-it noch zusätzlich etwas vorran zu treiben, hab ich ein neues Theme und git_info  bereitgestellt.

    n0qorg theme

    Schema: host directory (git-status dirty)>
    Bis jetzt noch nicht gemerged. Denke aber das kommt noch. Theme @ Github

    git_info Funktion

    Gibt Übersicht über das aktuelle Repo. Ab jetzt im Framework vorhanden.


  4. Permalink
  5. github | Sinn, Unsinn, Interfaces und schon wieder Zombies

    github ist da wo ich mich momentan sehr gerne rumtreibe.

    http://www.flickr.com/photos/jeremykendall/

    creative commons @ jeremy kendall on flickr

    Unsinn

    Dort gibt es viele Projekte die mich interessieren, ich ihnen aber trotzdem nicht folgen kann. Dazu gehören unter anderem:

    diaspora/diaspora
    gothfox/Tiny-Tiny-RSS
    github/gitignore

    Das ist so weil diese Repo’s _so viel_ Aktivität aufweisen, dass ich von keinem anderen meiner Projekte (auch nicht meiner eigenen) Meldungen mehr mitbekomme. Ich meine, wieso kann ich nicht regulieren? Wieso lassen sich Aktivitäten pro Projekt nicht zusammenfassen? Jeder Pull Request, Kommentar oder Issue wird mir direkt in meine TimeLine gepushed. Und das bei Diaspora, bei dem am Tag alleine >30 Commits passieren? Warum habe ich nicht die Möglichkeit mir nur die Aktivitäten meiner Repos anzeigen zu lassen? Denke die Jungs von Github müssen erst noch lernen solche hyperaktiven anständig mit der Plattform zu handlen. Sollte jemand die nötigen Links für mich haben, bitte immer her damit.

    Sinn

    Andererseits nehme ich auch an ein paar wirklich schönen Sachen teil. Unter anderem bash-it. Das Framework ist etwas, wo ich mir nichtmehr vorstellen kann vorher ohne ausgekommen zu sein.

    revans/bash-it
    jgoerzen/twidge

    Zombies

    Was ich außerdem verblüffend finde ist, dass wirklich jemand eines meiner eigenen Projekte interessant fand. Nämlich genau das, dass ich für den größten Quatsch halte. TaurusOlson hat auf Anhieb ein einwandfreies Modul und eine neue Lib für das zombie-revolution-environment geschrieben. O_o


  6. Permalink
  7. Mail | Adresse mit JavaScript vor Bots schützen.

    Um Schreibweisen wie user [ätt] domain [dott] com zu vermeiden gibt es seit längerem schöne Möglichkeiten (wie beispielsweise auch bei github eingesetzt) um den MailTo Link anständig lesbar zu halten und trotzdem vor (einem Großteil) der SpamBots zu schützen. Damit ich die paar Zeilen nicht wieder vergesse:

    yay. Auch wenn ich keine Ahnung von JavaScript habe.


  8. Permalink
  9. ASCII | StarWars via Telnet

    13 Jahre arbeitet anscheinend jemand bereits an einen Remake von StarWars Episode 4 in ASCII mit mehr als 15.000 Einzelbildern.

    Selbst anschauen:

    $ telnet towel.blinkenlights.nl


  10. Permalink
  11. bash-it | Zitronen-Thema

    Benutze nun schon seit längerem ein Community Framework für Bash, welches sich bash-it nennt. Darin lassen sich allerhand tolle Sachen einheitlich deklarieren und auslagern. Da meine .bashrc jetzt auch schon an die 300 Zeilen schwer ist, dachte ich es wäre eine gute Idee meine Konfigurationen dort hin auszulagern. Da wären dann auch gleich meine Completion und Theming Files untergebracht.

    Mir gefiel zwar nicht wirklich auf Anhieb ein ausgeliefertes Theme, aber es war relativ einfach ein Neues zu erstellen. Es war dann gelb, weil sich das schön vom Rest meines Terminals abhob. In einem Anflug wahnsinniger Einfallslosigkeit, nannte ich es dann einfach zitron. Zitron sieht folgendermaßen aus:

    Das Theme reagiert (als Teil von bash-it) auf git Repos. Wenn man sich in einem versioniertem Verzeichnis befindet, wird im Prompt automatisch der Name des Branch (master) eingefügt und zusätzlich dazu überprüft, ob das Working-Directory “dirty” ist (also uncommittete Änderungen). Falls ja wird ein gelbes Asterisk eingefügt (*).

    Mein Fork auf github von bash-it: http://github.com/noqqe/bash-it
    Das Theme als Quelltext: http://github.com/noqqe/bash-it/blob/master/themes/zitron/zitron.theme.bash