Was tun, wenn's beim SVN update Konflikte gibt?

Frederik Schwarzer schwarzerf at gmail.com
Tue Nov 9 10:58:39 CET 2010


[Burkhard Lück - Montag 08 November 2010 23:27:28] 
> Am Montag, 8. November 2010, um 22:17:23 schrieb Gerhard Stengel:
> > Hallo,
> > 
> > ich habe mal auf meinen KDevelop4/stable Ordner ein SVN update losgelassen,
> > da ja schon einiges eingecheckt wurde. Allerdings sind jetzt in ein paar
> > anderen .po-Dateien Konflikte entstanden. Warum ist das so? 
> 
> Weil Subversion und alle anderen Versionsverwaltungssysteme für 
> Übersetzungskataloge (gettext- / po-Dateien) nur bedingt geeignet sind.
> 
> Für das Gettextsystem ist nur Status der Nachricht, msgctxt und msgid 
> maßgebend; und hier spielt noch nicht einmal die Formatierung oder die 
> Reihenfolge der Statusangaben eine Rolle. 
> Du kannst eine msgid aus vielen Wörten in eine Zeile schreiben oder auch für 
> jedes Wort eine eigene Zeile benutzen. 
> Solange jedes Wort oder der ganz lange Satz aus vielen Wörtern nur in Kommata 
> (") eingeschlossen ist, sind für das dann für Gettext gleiche msgid's (das ist 
> jetzt ein kleines bißchen vereinfacht - ich wills nicht zu kompliziert machen 
> -  aber im Prinzip korrekt).
> 
> Auch die Reihenfolge der Nachrichten in der po_datein sind für Gettext 
> unwichtig, ob die Nachricht samt Übersetzung am Anfangoder Ende oder in der 
> Mitte steht, das ist egal.
> 
> Versionsverwaltungssysteme verstehen sowas natürlich nicht, die sehen po-
> Dateien als Textdateien, in denen jede Änderung bedeutsam ist.
> 
> > An den
> > Übersetzungen werkele ja nur ich im Moment herum, glaube ich. Kann es
> > sein, dass (ein Entwickler) das Skript Messages.sh aufruft? 
> 
> Das (Nachrichten via Messages.sh extrahieren und mit den vorhandenen 
> Übersetzungen 'mergen') macht Scripty einmal am Tag für trunk + stable.
> 
> Wenn jetzt ein Entwickler am Quelltext im 'String Freeze' arbeitet, fügt er 
> zum Beispiel neuen Code ein oder ändert vorhanden Code, aber nicht die 
> Nachrichten, das ist nicht erlaubt.
> Damit wird auch Text in der po-Datei geändert (z. B. Zeilennummer der 
> Nachricht im Code. Nachricht in andere Datei verschoben...). 
> Es gibt noch viele weitere Ursachen, die zu einer Änderung von Text in der po-
> Datei führen, die zu übersetzenden Nachrichten aber nicht verändern, daher im 
> 'String Freeze' erlaubt und für Gettext und die Übersetzung bedeutungslos 
> sind.
> 
> Diese bedeutungslosen Textänderungen verstehen Versionsverwaltungssysteme wie 
> SVN nicht, daher deine Konflikte, die für Gettext nicht existieren.
> 
> > Soll ich
> > versuchen, die po-Dateien wieder zu mergen und sie wieder ins Review-Board
> > stellen, damit der checkin dann geschmeidiger geht?
> > 
> "Im Prinzip" ja, das hängt aber von der Zahl der Konflikte ab. Bei der Doku (da 
> verstehen Versionsverwaltungssysteme noch weniger als bei der GUI) benuzte ich 
> zum Patchen immer die alte Version, gegen die der Diff fürs Reviewboard 
> erstellt wurde.

Sehr schöne Antwort. :)

Und die Idee, gegen die alte Version zu patchen, ist auch einen Versuch wert.
Mit Patch hatte ich nicht nur ein Problem in der Vergangenheit.

MfG


More information about the kde-i18n-de mailing list