[Trennmuster] neues Skript patgen-list-diff.sh

Stephan Hennig mailing_list at arcor.de
Mo Jun 11 18:22:22 CEST 2012


Am 19.04.2012 20:56, schrieb Werner LEMBERG:
>> Der Zustand des Arbeitsverzeichnisses wird bisher allerdings nicht
>> wiederhergestellt.  Gibt man einen Zielcommit an, bleibt dieser nach
>> Abschluss des Skripts ausgecheckt.  Das könnte man noch ändern.
>> Außerdem wäre es sinnvoll, vor dem ersten 'git checkout' zu prüfen,
>> ob das Arbeitsverzeichnis "sauber" ist.
> 
> »git stash« und »git stash pop«?

Ich habe das Skript patgen-list-diff.sh so geändert, dass die
Arbeitskopie nicht mehr mit 'git checkout' verändert wird, sondern
stattdessen Schnappschüsse der betrachteten Commits mit 'git archive' in
Verzeichnisse der Form

  <Commit-Datum>+<Commit-Zeit>-<Commit-Hash>

kopiert werden.  Dort werden die jeweiligen Wortlisten erstellt, die
Verzeichnisse bleiben abschließend bestehen.  Das hat den Vorteil, dass
die Wortlisten bereits existierender Commits (z. B. des Tags
dehyph-exptl-v0.23) nicht jedes Mal neu erstellt werden müssen.

Wegen des Verzichts auf 'git checkout' kann das Skript nun auch in
"unreinen" Arbeitsverzeichnissen ausgeführt werden.  Änderungen nur in
der Arbeitskopie bleiben beim Vergleich allerdings unberücksichtigt.

Außerdem wird bei Angabe nur eines Commits jetzt HEAD statt master als
Zielcommit verwendet.  Das ist bei der Arbeit in lokalen Zweigen etwas
bequemer.

Viele Grüße,
Stephan Hennig



Mehr Informationen über die Mailingliste Trennmuster