Patchmanagement mit Git

Eine zentrale Aufgabe in der Softwareentwicklung ist der Umgang mit Änderungen. Das betrifft zum einen die Entwicklung der Quellcodebasis insgesamt, also die “klassische” Versionskontrolle. Zum anderen ist aber auch der Weg dahin wichtig, also die Entwicklung eines Patches. Gerade bei größeren, insbesondere strukturellen, Änderungen kann man leicht den Überblick verlieren. Das gilt umso mehr, wenn sich während der Entwicklung eines Patches die Sourcecodebasis ändert und es somit zu Konflikten kommt, die dann zu beheben sind. Mit diesem Teilaspekt, also dem (lokalen) Patchmanagement, befasst sich dieser Artikel.

Wenn man sich damit begnügt, zusammengehörende Änderungen in einem “großen Klumpen” zu verwalten, eignen sich lokale Branches in Git, einem verteilten Versionskontrollsystem, hierfür sehr gut. Damit hat man auch die Historie der lokalen Änderungen parat und kann sie bei Bedarf wieder hervorholen. Aber größere Änderungen werden schnell unübersichtlich, wenn man sie nicht in handliche Teile aufteilt. So könnte man beispielsweise eine Änderung in 1. das Bereitstellen einer Schnittstelle und 2. Änderungen in darauf aufbauendem Code, die auf diese Schnittstelle zugreifen, aufteilen.

Auch der Übergang von der lokalen Entwicklung in das zentrale Versionskontrollsystem wird dadurch erleichtert. Die ganze lokale Entwicklungshistorie mit allen Irrungen und Wirrungen will man gar nicht auf alle Ewigkeit für alle sichtbar machen. Die Änderung dort aber nur als Ganzes zu sehen, ist aber auch nicht detailliert genug. Zum einen weiß man nicht mehr, welche Änderung (einer bestimmten Zeile beispielsweise) für welchen Teilaspekt zuständig ist. Zum anderen bleibt bei Problemen mit dem neuen Code nur, die Änderung als Ganzes zurückzunehmen. Anders sieht es hingegen aus, wenn man sauber getrennte, auf einander aufbauende, aber jeweils für sich baubare und lauffähige Änderungen hat. Unter Berücksichtigung der Abhängigkeiten kann man diese dann, ggf. auch (teil)automatisiert, wieder zurücknehmen. Auch die Begutachtung (Review) von Quellcodeänderungen wird durch die Strukturierung erleichtert.

Nachdem die Vorteile einer entsprechenden Lösung nun hoffentlich einleuchten, möchte ich zu entsprechenden Werkzeugen kommen. Mercurial Queues setzt auf dem verteilten Versionskontrollsystem Mercurial auf. Dieses finde ich persönlich nicht sonderlich benutzerfreundlich, ich arbeite lieber mit Git. Außerdem hat Mercurial Queues den Nachteil, dass die einzelnen Patches nicht versioniert sind (es ist wohl irgendwie möglich, aber nur sehr umständlich). Bei der Suche nach einer Lösung, die zum einen die Versionierung von Patches erlaubt, und zum anderen gut mit Git integriert ist, bin ich schließlich auf topgit gestoßen. Das Prinzip von topgit ist schnell erklärt: Es arbeitet mit ganz normalen Git-Branches (jeder Teil des Patches ist ein eigener Branch), erfasst aber die Abhängigkeiten zwischen diesen. Wenn man Änderungen im zentralen Sourcecode oder in einem grundlegenden Teil des Patches hat, kann man diese mit einem Befehl schnell durch alle “Ebenen” des Patches durchziehen.

Fazit: topgit ist zwar noch recht jung und nicht vollständig ausgereift (so kann man beispielsweise Abhängigkeiten eines Branches zu einem anderen hinzufügen, nicht aber wieder löschen), die gute Integration mit Git macht das aber wieder wett. Da ganz normale Git-Branches incl. Historie verwendet werden, ist auch das Risiko durch irgendwelche Bugs gering: Zur Not kann man mit den Branches auch mit Git-Bordmitteln noch etwas anfangen. Insofern eine klare Empfehlung, es lohnt sich!

Sehnenreizung?

Gestern war ich wieder Laufen, vielleicht ein wenig zu weit – am Ende mußte ich gehen … Jedenfalls tat es schon unmittelbar danach (bzw. während, deshalb bin ich dann ja gegangen) auf der Oberseite des Fußes weh (des rechten, mal wieder).

Zwei Google-Treffer legen nahe, daß es sich um eine Sehnenreizung des Zehenstreckers handeln könnte, die durch zu feste Schnürung verursacht wurde. Laufpause sei nicht nötig. Naja, das ist schonmal schön, aber ich werde mir wohl mal das Buch Laufen ohne Beschwerden, da taucht die Diagnose sogar im Inhaltsverzeichnis (PDF) auf …

Tiles@Home

Ich hoffe doch, daß das Projekt Openstreetmap hinlänglich bekannt ist. Eine Version der Karten wird verteilt, also von vielen Leuten auf dem PC zu Hause etc., gerendet: Dieses Projekt nennt sich Tiles at Home.

Seit Anfang der Woche wurde dort ein neuer Server installiert, der endlich mit mehr als ein paar Dutzend Clients klarkommt, und die Zahl der offenen Aufträge scheint rapide anzusteigen. Wenn ihr also Openstreetmap unterstützen wollt: Mitmachen!

Computer aus!

Heute abend findet die bundesweite Aktion “Licht aus! Für unser Klima.” statt. Um 20:00 sollen alle für fünf Minuten das Licht ausschalten.

Da durch die plötzlichen Laständerungen am Beginn und Ende der Aktion möglicherweise mit Beeinträchtigungen der Stromnetze bis hin zu Stromausfällen zu rechnen ist, solltet Ihr sicherheitshalber Euren Computer solange ausschalten – und zwar von exakt 19:55 bis 20:10 Uhr.

Öffentlichkeitsbeteiligung

Gerade war ich bei einer “frühzeitigen” (man plant seit 10 Jahren) Beteiligung der Öffentlichkeit im Rahmen einer B-Plan-Aufstellung.

In der Form, wie diese Veranstaltung ablief, ist das reine Zeitverschwendung. Es gab einen nicht sonderlich detaillierten Plan, und einige Erläuterungen. Auf konkrete Fragen wurde ausweichend geantwortet, und auf Untersuchungen verwiesen, die man aber nicht da hatte, und die im übrigen auch nicht öffentlich sind, etc.

Kurz: Die Öffentlichkeit wurde nicht beteiligt, sondern mit tröpfchenweise Infos beruhigt. Beteiligung wäre für mich, die kompletten Planunterlagen in der Rohfassung, in der sie zur Zeit halt sind, auszulegen, und dann kann man seinen Senf dazugeben, aber nicht so eine Alibiveranstaltung.

Fahrradschrauber

In drf hatte ich mich erkundigt, ob mein BOC-Rad mit den kaputten Speichen am Hinterrad als wirtschaftlicher Totalschaden anzusehen ist oder ob man da noch was machen kann. Schließlich wurde mir als Werkstatt Raguz Luka (in der Weststadt an der Kaiserallee) empfohlen, wohin ich dann das ausgebaute Hinterrad auch gebracht habe.

Bei der Annahme war er zwar etwas gehetzt (gerade viel los im Laden), und ich hatte schon befürchtet, bei 35 € Gesamtpreis (mit neuer Felge) etwas falsch verstanden zu haben. Der Telefonanruf bei Fertigstellung blieb zwar leider aus, aber ansonsten ist alles bestens (bin dann halt heute einfach mal so vorbei). Neue Felge, Speichen vernünftig fest angezogen, und es hat nur 30 € gekostet (u. U. war das eine Entschädigung für die vergessene Benachrichtigung, kein Plan). Demnächst soll ich es nochmal vorbeibringen zum Nachziehen der Speichen (jaja, in drf wird gesagt, wenn das nötig ist, sei es Pfusch – ich denke, es ist eher ein gesparter manueller Arbeitsschritt, der bei dem Preis nicht unbedingt erwartet werden kann und durch ein bißchen Fahren ebenso gut erledigt werden kann).

Jetzt das Rad noch wieder einbauen, und dann habe ich auch wieder ein billiges Rad für unsicherere Abstellplätze (“Bahnhofsrad”).

Klimaschutz

Zum Eintrag “Energieverschwendung in der Mensa” erreichte mich schon vor ein paar Tagen eine Mail von Julian Blücher, mit folgendem wesentlichen Inhalt:

[E]ine umfassende Klimaschutzstrategie kann nur lauten:

  1. auf welche Emissionen kann ich verzichten?
  2. welche kann ich reduzieren?
  3. auf welche kann / möchte ich persönlich nicht verzichten (Flugreise), bin aber bereit durch (freiwillige) Investitionen in
    Klimaschutzprojekte diese Emissionen auszugleichen?

Selbstverständlich ist die Einsparung von Energie (bzw. Energieeffizienz) grundsätzlich die sinnvollste aller Klimaschutzstrategien und vorzuziehen. Dennoch frage ich mich, wie (kosten; energie)-effizient es wäre nachträglich Fenster in die Decke zu installieren, um dann das natürliche Licht zu nutzen.

Unser Ziel war es nicht in erster Linie die „Energieverschwendung“ an der Mensa zu reduzieren, sondern eine Solaranlage zu bauen. Dafür kam das Mensadach am besten in Frage.

Die PV-Anlage stellt nur einen Tropfen auf den heissen “Klimastein” dar und hat vielmehr symbolischen Charakter. Sie erzeugt ungefähr soviel Strom wie ein 4-Personen Haushalt an Strom im Jahr benötigt.

Vielmehr möchten wir mit der digitalen Anzeigetafel (visualisiert eingespeiste Leistung sowie die eingesparte CO2 Menge) im Mensafoyer die Studies (un-)bewusst für die Thematik sensibilisieren. Darüber hinaus fördern wir mit den erwirtschafteten Erträgen andere ökologische Projekte an der Uni, die letzte Ausschreibung für Projekte und wissenschaftliche Arbeiten über 1000 € endete im Februar: www.solarfri.de

Grundsätzlich: die Solarenergie ist nicht mit konventionellen Energieträgern wettbewerbsfähig, so weit so einig. Das wird sich aber nach jetzigen Berechnungen spätestens im Jahre 2020 ändern. Vor dem Hintergrund, dass die Erde 15 000 Mal mehr Sonnenenergie erreicht, als die Menschheit derzeit verbraucht, und die Tatsache, dass die Sonne uns keine Rechnung schickt ;-) , macht es m. E. Sinn die Solarenergie mit Hilfe garantierter Abnahmepreise zunächst zu fördern. Im Übrigen ist jegliche Energie (fossile durch Photosynthese; Wind, Wasser durch das Wettergeschehen…) ohne Sonnenenergie nicht denkbar, ergo letztendlich auf die Sonne zurückzuführen.

Für mich lautet die logische Schlussfolgerung, die Sonnenenergie direkt zu nutzen!

Zum Himalayacross; wir haben es bedauert nicht mit der Transsibirischen dort hin fahren zu können (dies hätten wir einem Flug eindeutig vorgezogen). So ein Flug macht wirklich viel Dreck, und zwar so rund 2 Tonnen pro Flug und Nase. Ich persönlich habe diesen Flug als für mich „nicht-vermeidbar“ definiert. Dafür habe ich die Flüge mit www.atmosfair.de und durch den Baumsparvertrag in Panama mehr als kompensiert. Die Uni Karlsruhe sowie das Institut für Wirtschaftspolitik und Wirtschaftsforschung sowie insgesamt 6 Sponsoren haben uns diese Reise ermöglicht: http://www.himalayacross.com/index.php?section=conditions

Ich denke, dass wir mit unseren Reiseberichte (über 7000 Besucher) und der Berichterstattung einige Leute auch auf die globalen Umweltprobleme, die wir in Deutschland mitverantworten, aufmerksam machen konnten.

Ok soweit so gut, gerne diskutiere ich weiter mit Dir das Thema, wenn Du magst kannst Du den Inhalt auch als „Kommentar“ in Deinen Blog fügen.

Sonnige Grüße,

Le Jules

Climate Ambassador

Daß Maßnahmen wie Verwendung natürlichen Lichts nachträglich nicht ganz einfach zu realisieren sind, ist mir inzwischen auch klargeworden. Umso wichtiger ist es, sowas gleich von Anfang an zu bedenken. Die Tage werde ich mir diesbezüglich mal die “Mensa Moltke” anschauen – vielleicht hat man beim Studentenwerk ja inzwischen mal umgedacht.

Darin, daß symbolische Maßnahmen geeignet sein können, in der Öffentlichkeit ein Problembewußtsein zu schaffen, stimme ich mit Julian sogar grundsätzlich überein. Gerade im Bereich Umweltschutz kann sowas aber auch leicht in die falsche Richtung losgehen. “Oh, schön, daß jemand was für den Klimaschutz tut.”, und ab ins Auto, daß man ja unbedingt braucht, um die Kurzstrecke zwischen Wohnung und Arbeitsplatz zurückzulegen.

Ferienangebot der Mensa

Weiß jemand, was mit der Mensa los ist? Seit dieser Woche haben mittags drei Linien plus Schnitzelbar geöffnet plus Update geöffnet, und Abendessen gibt es auch.

Hat das Studentenwerk gemerkt, daß man das Angebot bisher leicht am Bedarf vorbeigeplant hat?

Dixit Jens: “Fiat lux!”

et factum est lux.

Naja, ganz so einfach war es leider nicht.

Es fing damit an, daß ich mich vor ca. zwei Wochen endlich mal aufgerafft habe, eine Deckenlampe anzuschaffen. Es ist so ein weißes rundes Teil mit drei Strahlern für immerhin knapp 20 Euro geworden. Dazu habe ich dann gleich drei Energiesparlampen (20 W von General Electric, “nackt”, also mit sichtbarer gewundener Leuchtröhre) gekauft, schließlich soll dann ja nicht ein zu hoher Energieverbrauch vom Benutzen abhalten.

Also Lampe angebracht, wofür ich mir sicherheitshalber noch einen Spannungsprüfer gekauft habe (so ein Billigteil mit Glimmlampe für 2,50 €), erstmal einfach so frei schwebend. Leuchtmittel reingeschraubt – nix. Spannung geprüft: geht. Was ich noch vergaß zu erwähnen: Beim Senkrechtstellen eines Strahlers sprang dieser aus der Halterung und hing dann nur noch an den Stromkabeln.

Das von meinem Vater empfohlene leichte Hochbiegen der Kontakte in der Fassung half auch nichts. Andere Glühbirnen liefen allerdings. Naja, bei Walmart umgetauscht, was auch problemlos ging. Und wieder das gleiche: Läuft mit Glühbirnen, läuft nicht mit Energiesparlampen. Dabei sollte ich vielleicht noch erwähnen, daß die Lampe mit doppelseitigem Klebeband an der Decke befestigt ist – das ständig abzureißen, ist teuer und die Tapete geht kaputt …

Naja, irgendwann bekam ich dann den Tipp, daß es an der Form der “Birne” liegen könnte. Und das war’s auch: die billigen sind über dem Sockel eher konvex, während Glühbirnen und glühbirnenähnliche Energiesparlampen wie Philips Softone dort konkav sind. Also die Birne aus meiner Schreibtischlampe ausprobiert: Geht. Zwei Philips Softone 20 W für je stolze 7,50 € gekauft: Geht. Jedenfalls ca. drei Stunden lang. Dann machte es *peng*, die Birne war aus und roch etwas verkohlt. Das ist jetzt schon die zweite Philips Softone, die mir am ersten Tag kaputt geht. Irgendwie haben die doch leichte Qualitätsprobleme … Naja, auch die hat Bahr umgetauscht (diesmal anstandslos, im Gegensatz zur ersten, wo man mir erzählen wollte, ich hätte die an einem Tag zu oft an und aus gemacht), und jetzt hab ich mit 54 Watt ein schön helles Zimmer.

Eine Bitte an die Politik: Wie wäre es mal mit Normen für Lampenformen? Es kann doch nicht angehen, daß die Fassungen normiert sind und es dann trotzdem nicht paßt …

Strichfolgen

Für die Strichfolge in chinesischen Schriftzeichen gibt es zwar diverse Regeln, aber die sind nicht immer so ganz eindeutig, und man weiß immer noch nicht, in welche Richtung ein Strich geht, die Neigung ist nämlich je nach Font unterschiedlich ausgeprägt …

Aber zum Glück gibt es da Infos im Netz:

Einmal den Ocrat-Mirror, wo es recht viele Zeichen als animierte GIFs gibt. Allerdings fehlen leider viele traditionelle Zeichen, und die Darstellung macht die Richtung der Striche nicht unbedingt besonders deutlich erkennbar.

Die zweite Möglichkeit ist ein Windows-Programm von EuroAsiaSoftware. Wäre, denn es ist nicht nur umständlich zu bedienen (insbesondere, wenn man nur die Strichfolgen haben will), sondern stürzt bei mir auch noch ohne Anlaß ab. In der Form schlicht unbrauchbar.

Gewitter

Schon seit drei Stunden blitzt und donnert es draußen munter vor sich hin – ein schöner Anblick!

Obwohl es draußen abgekühlt ist, kommt irgendwie aber trotzdem kaum kühle Luft rein – es ist nicht wirklich windig genug. Naja, immer noch besser, als wenn es reinregnet, wie beim letzten Mal …

Genießen wir den Rest, laut BLIDS scheint das Gewitter langsam vorüberzuziehen.

Tauchausfahrt

Am Donnerstag abend bin ich von der Tauchausfahrt nach Hurghada zurückgekommen. Insgesamt ein sehr gelungener Urlaub. Das Hotel und das Essen war gut, die Basis (und der Tauchguide) sehr professionell, die Tauchgänge sehr abwechslungsreich – ein super Urlaub.

In nächster Zeit werde ich dieses Weblog mit Beiträgen dazu füllen und die dann vielleicht später noch mit Fotos ergänzen.

Einigkeit und Recht und Freiheit

In letzter Zeit wird dank der Fußball-WM wieder vermehrt die deutsche Nationalhymne gesungen, deren Text ich hier gerne nochmal wiedergebe:

Einigkeit und Recht und Freiheit für das deutsche Vaterland!
Danach lasst uns alle streben brüderlich mit Herz und Hand!
Einigkeit und Recht und Freiheit sind des Glückes Unterpfand;
|: Blüh’ im Glanze dieses Glückes, blühe, deutsches Vaterland! :|

Und damit legen dann natürlich auch die Bedenkenträger wieder los.

Zum Beispiel die GEW, die die Hymne als nicht mehr zeitgemäß bezeichnete, inzwischen aber zurückgerudert ist, oder auch Walter Jens (Netzeitung), der da sagt, niemand verstehe mehr, was «des Glückes Unterpfand» sei.

Stattdessen will er ein Bitte-habt-uns-Lieb-Lied von Brecht:

Anmut sparet nicht noch Mühe
Leidenschaft nicht noch Verstand
Dass ein gutes Deutschland blühe
Wie ein andres gutes Land
Dass die Völker nicht erbleichen
Wie vor einer Räuberin
Sondern ihre Hände reichen
Uns wie andern Völkern hin …
Und weil wir dies Land verbessern
Lieben und beschirmen wir’s…

Der Text paßt zwar zu Brecht, aber nicht zu einer Nationalhymne.

Gegen ein bißchen Pathos in einem feierlichen Text ist doch nichts einzuwenden, und die dritte Strophe des Liedes der Deutschen bringt in mustergültiger Weise Werte zum Ausdruck, die wir zur Grundlage unserer Gesellschaftsordnung und unseres politischen lebens machen wollen, und auf die wir zu Recht stolz sein können.

Um es mit von Weizsäcker zu sagen:

Die 3. Strophe des Hoffmann-Haydn’schen Liedes hat sich als Symbol bewährt. Sie wird im In- und Ausland gespielt, gesungen und geachtet. Sie bringt die Werte verbindlich zum Ausdruck, denen wir uns als Deutsche, als Europäer und als Teil der Völkergemeinschaft verpflichtet fühlen.

Für zwei Mark Entropie, bitte!

Gerade wollte ich mir für Licq-Zwecke einen neuen GPG-Key erstellen (man muß nämlich die Passphrase im Klartext in eine Config-Datei eintragen), da erzählt GPG mir:

Es sind nicht genügend Zufallswerte vorhanden. Bitte führen Sie andere
Arbeiten durch, damit das Betriebssystem weitere Entropie sammeln kann!
(Es werden noch 195 Byte benötigt.)

Das ist doch die Idee für einen Webservice: Zufallszahlen gegen Geld. Anbieter könnte zum Beispiel eine vertrauenswürdige Regierungsbehörde sein.

Jeans

Der Winter kommt näher, also habe ich mir endlich mal eine zweite Jeans gekauft, langsam kann ich nicht mehr darauf vertrauen, zum Waschen einen Tag zu finden, an dem eine kurze Hose reicht.

Dabei sind mir zwei Sachen aufgefallen:

Der Preis von knapp 30 Euro für eine Markenjeans. Ich kann mich da durchaus noch an Preise über 100 Mark erinnern, oder auch an 35 € für eine Nicht-Marken-Jeans. Hab ich irgendwas verpaßt, oder ist Otto Normalverbraucher jetzt auch andere Marken, die nach irgendwelchen Designern benannt sind, umgestiegen?

Und ebenfalls noch nicht ewig: Diese dünnen Plastikbändchen, mit denen Schilder befestigt sind – die kann man mit einem Ruck abziehen. Früher hat man entweder den Stoff zerrissen oder brauchte eine Schere.

Schischa mit Holzkohle

Gerade haben wir zu Tobys Geburtstagsgrillen mal wieder intensivst Schischa geraucht. Vanilletabak ist übrigens echt lecker. Und da am Ende die große Kohle alle war, der Grill aber noch ein bißchen glühte, haben wir stattdessen Holzkohlestückchen genommen.

Das schmeckt zwar ein bißchen anders, und man muß öfter neue rauftun, ist aber definitiv etwas, was man mal ausprobiert haben sollte.

Trenitalia

Heute bin ich mit der Bahn von München nach Trento gefahren. Tarif EuropaSpezial der Deutschen Bahn, halbwegs günstig für 29 € (allerdings ist das für nur 355 km so günstig nun auch wieder nicht). Entsprechend erwartete ich dann auch den gewohnten DB-Standard.

Am Münchener Hauptbahnhof erwartete mich dann Überraschung: Wagenmaterial von Trenitalia. Erstmal nichts bei gedacht … Dann meinen Wagen Nr. 259 gefunden: alle Türen defekt. Also in Wagen 260 eingestiegen – die Übergänge zwischen den Wagen erinnerten an D-Zug-Zeiten. Immerhin ließen sich die Türen elektrisch öffnen.

Das Zugbegleitpersonal kam von den ÖBB. Bis auf die Tatsache, daß kein Mobiles Terminal vorhanden war, um mein Online-Ticket zu prüfen, war am Schaffner aber nichts auszusetzen. Der Zugchef sagte auch nur einmal alle Halte des Zuges (und es waren viele, insbesondere in Ösiland – der hat in Städten gehalten, von denen ich nicht mal wußte, daß sie existieren) an. Etwas nerviger war da der Typ aus dem BordBistro. Der war offensichtlich nicht ausgelastet und wies nach jedem der vielen Halte in Italienisch und Englisch auf seinen gastronomischen Service hin.

Nach jedem Anfahren (was mit einem seltsamen Quietschen verbunden war), ging im Abteil übrigens kurz das Licht aus … Und die Vakuum-Klospülung ist bei Trenitalia anscheinend auch noch nicht erfunden worden.

Sehr schön auf der gesamten Fahrt war das Alpenpanorama. Und die Stadtdurchfahrt in Innsbruck (auf einer erhöht liegenden Trasse) erinnerte irgendwie an die Berliner Stadtbahn. Nicht so schön war allerdings, daß es auf der gesamten Fahrt regnete (und jetzt in Trento immer noch regnet …).

Am Brenner konnte man dann die Süchtigen beobachten, die im Zug (auf dem nicht überdachten Bahnsteig regnete es) an der offenen Tür ihre Zigaretten rauchten. Wie überall sonst in der Öffentlichkeit ist in Italien jetzt auch das Rauchen in Zügen verboten. Drohende Geldbuße: 7 Euro.

Wie heißt es doch: Eine Bahnfahrt, die ist lustig, eine Bahnfahrt, die ist schön …