Projekt-Einstellungen

Subversion Eigenschaften

Abbildung 4.37. Subversion Eigenschaftsseite

Subversion Eigenschaftsseite


Sie können die Subversion Eigenschaften sowohl im Windows Eigenschaftendialog als auch im Kontextmenü mit TortoiseSVNEigenschaften und in Statuslisten mit KontextmenüEigenschaften anzeigen und verändern.

Sie können Ihre eigenen Eigenschaften oder Subversion Eigenschaften hinzufügen. Diese beginnen alle mit svn:. svn:externals ist solch eine Eigenschaft. Sehen Sie sich „Externe Objekte“ an, um mehr über das Thema zu erfahren.

svn:keywords

Subversion unterstützt eine CVS-ähnliche Expansion von Schlüsselwörtern, die dazu genutzt werden kann, Dateinamen und Revisionsinformationen in der Datei selbst einzubetten. Die derzeit unterstützten Schlüsselwörter sind:

$Date$

Datum der letzten bekannten Übertragung. Dieses Datum hängt von der Information ab, die bei der letzten Aktualisierung der Arbeitskopie erhalten wurde. Es wird nicht das Projektarchiv auf neuere Änderungen abgefragt.

$Revision$

Revision der letzten bekannten Übertragung.

$Author$

Autor der letzten bekannten Übertragung.

$HeadURL$

Die vollständige URL der Datei im Projektarchiv.

$Id$

Eine komprimierte Version der vorherigen drei Schlüsselwörter.

Um mehr über diese Schlüsselwörter herauszufinden, lesen Sie den Abschnitt Ersetzung von Schlüsselworten im Subversion Buch, in dem die Schlüsselwörter und ihre Anwendung im Detail beschrieben werden.

Um mehr Informationen über Eigenschaften in Subversion zu erhalten, schauen Sie sich das entsprechende Kapitel Eigenschaften im Subversion Buch an.

Eigenschaften hinzufügen und bearbeiten

Abbildung 4.38. Eigenschaften hinzufügen

Eigenschaften hinzufügen


Um eine Eigenschaft hinzuzufügen, klicken Sie zunächst auf Neu.... Wählen Sie die gewünschte Eigenschaft aus dem Menü und tragen Sie die benötigten Informationen in dem entsprechenden Dialog ein. Diese eigenschaftsspezifischen Dialoge sind in „Eigenschaftseditoren“ detailliert beschrieben.

Um eine Eigenschaft hinzuzufügen, die nicht über einen eigenen Dialog verfügt, wählen Sie Erweitert aus dem Neu... Menü. Dann wählen Sie entweder eine existierende Eigenschaft aus der Kombinationsliste oder Sie tragen eine eigene Eigenschaft ein.

Wenn Sie eine Eigenschaft für mehrere Objekte gleichzeitig setzen wollen, markieren Sie die Dateien / Ordner im Explorer und wählen Sie KontextmenüEigenschaften.

Wenn Sie die Eigenschaft rekursiv für alle Dateien und Ordner unterhalb des aktuellen Ordners setzen wollen, wählen Sie die Rekursiv Option.

Um eine Eigenschaft zu verändern, wählen sie die Eigenschaft in der Liste der existierenden Eigenschaften aus und klicken dann auf Bearbeiten....

Um eine Eigenschaft zu löschen, wählen Sie die Eigenschaft zunächst aus der Liste aus. Klicken Sie anschließend auf Entfernen.

Die svn:externals Eigenschaft kann genutzt werden, um andere Projekte aus dem gleichen oder einem anderen Projektarchiv in die Arbeitskopie einzubinden. Weitere Informationen finden sich in „Externe Objekte“.

Eigenschaften der HEAD revision bearbeiten

Da Eigenschaften versioniert sind, können Sie die Eigenschaften der vorherigen Revisionen nicht bearbeiten. Wenn Sie Eigenschaften im Log-Dialog oder aus einem nicht-HEAD Revision im Repository Browser betrachten, sehen Sie eine Liste der Eigenschaften und Werte, aber keine Steuerelemente zum Bearbeiten.

Eigenschaften exportieren und importieren

Häufig werden Sie wieder und wieder die gleichen Eigenschaften setzen, z.B. bugtraq:logregex. Um diesen Prozess zu vereinfachen und Eigenschaften von einem Projekt in ein anderes kopieren zu können, steht Ihnen die Export/Import Funktion zur Verfügung.

Ausgehend von der Datei bzw. dem Ordner, für die die Eigenschaften bereits gesetzt sind, wählen Sie TortoiseSVNEigenschaften, markieren die Eigenschaften, die Sie exportieren möchten und klicken auf Export.... Sie können anschließend eine Datei angeben, in der die Eigenschaften gespeichert werden.

Ausgehend von den Ordnern, die die Eigenschaften erhalten sollen, wählen Sie TortoiseSVNEigenschaften und klicken auf Import.... Über einen Dateiauswahldialog können Sie die gewünschte Datei angeben. Die importierten Eigenschaften werden nicht-rekursiv zu den Ordnern hinzugefügt.

Wenn sie Eigenschaften rekursiv hinzufügen möchten, folgen Sie den oben stehenden Schritten. Markieren Sie nacheinander die Eigenschaften im Dialog klicken Sie auf Bearbeiten... und aktivieren Sie die Eigenschaften rekursiv anwenden Option und bestätigen mit OK.

Das Importformat ist binär und spezifisch für TortoiseSVN. Sein einziger Zweck besteht darin, Eigenschaften per Import/Export zu übertragen. Deshalb besteht kein Grund, die Dateien zu bearbeiten.

Binäreigenschaften

TortoiseSVN kann binäre Eigenschaften mittels Dateien handhaben. Um einen binären Eigenschaftswert zu lesen, müssen sie diesen in eine Datei Speichern.... Um eine binäre Eigenschaft zu setzen, benutzen sie einen Hex-Editor oder ein anderes Programm, um eine Datei mit dem binären Inhalt zu erstellen, dann Laden... Sie diese aus der Datei.

Obwohl binäre Eigenschaften nicht häufig verwendet werden, sind sie doch in manchen Fällen nützlich. Sie können zum Beispiel die Vorschau einer großen Grafikdatei als binäre Eigenschaft in Subversion speichern, um sich schnell einen Eindruck des Bildes verschaffen zu können.

Eigenschaften automatisch setzen

Sie können Subversion so einrichten, dass Eigenschaften für Dateien und Ordner automatisch gesetzt werden, wenn Sie zum Projektarchiv hinzugefügt werden. Es gibt zwei verschiedene Wege dazu.

Sie können die Subversion Konfigurationsdatei bearbeiten, um diese Funktion auf dem Client zu aktivieren. Auf der Allgemein Seite der TortoiseSVN Einstellungen findet sich eine Bearbeiten Schaltfläche, die Sie direkt dort hinbringt. Die Konfigurationsdatei mit der einige Subversion Verhaltensweisen festgelegt werden ist eine einfache Textdatei. Sie müssen darin zwei Dinge ändern. Erstens müssen Sie in der miscellany Sektion die Zeile enable-auto-props = yes auskommentieren. Zweitens müssen Sie in dem darunterstehenden Bereich festlegen, welche Eigenschaften zu welchen Dateitypen hinzugefügt werden sollen. Dabei handelt es sich um eine Subversion Standardfunktion, die in jedem Subversion Client funktioniert. Allerdings müssen die Einstellungen auf jedem Computer vorgenommen werden. Es gibt keine Möglichkeit die Einstellungen über das Projektarchiv zu verbreiten.

Eine alternative Methode ist, die tsvn:autoprops Eigenschaft, wie im nächsten Abschnitt beschrieben, auf Ordner zu setzen. Diese Methode funktioniert nur mit TortoiseSVN clients, dafür wird die Eigenschaft beim Aktualisieren in alle Arbeitskopien verteilt.

Ab Subversion 1.8, können Sie die Eigenschaft svn:auto-props auf den Wurzelordner setzen. Die Eigenschaft wird automatisch von allen Unterordnern geerbt.

Egal welche Methode Sie wählen, Sie sollten wissen, dass auto-props nur beim Hinzufügen von Dateien zum Projektarchiv gesetzt werden. Es werden niemals die Eigenschaften von Dateien gesetzt oder geändert, die bereits versioniert sind.

Wenn Sie ganz sicher sein wollen, dass neue Dateien die korrekten Eigenschaften erhalten, sollten Sie eine pre-commit Aktion im Projektarchiv einrichten, die Übertragungen verwirft, wenn die erforderlichen Eigenschaften nicht gesetzt sind.

Übertrage Eigenschaften

Subversion Eigenschaften sind auch unter Versionskontrolle. Nachdem Sie eine Eigenschaft geändert haben, müssen Sie die Änderungen zum Projektarchiv übertragen.

Konflikte in Eigenschaften

Sollte es beim Übertragen zum Server zu einem Konflikt kommen, weil ein anderer Benutzer die gleiche Eigenschaft geändert hat, generiert Subversion eine .prej Datei. Löschen Sie diese Datei, nachdem Sie den Konflikt aufgelöst haben.

TortoiseSVN Projekteigenschaften

TortoiseSVN besitzt ein paar eigene spezielle Eigenschaften, die mit tsvn: beginnen.

  • tsvn:logminsize Setzt die minimale Länge einer Logmeldung für eine Übertragung. Wenn Sie eine Logmeldung eingeben welche kürzer ist als mit dieser Eigenschaft festgelegt, dann bleibt die Übertragung deaktiviert. Dies ist nützlich wenn Sie die Benutzer dazu anhalten möchten, für jede Übertragung eine gute Logmeldung zu schreiben. Wenn diese Eigenschaft nicht gesetzt ist, sind leere Logmeldungen erlaubt.

    tsvn:lockminsize Setzt die minimale Länge einer Sperrmeldung. Wenn Sie eine Meldung eingeben, die kürzer ist als mit dieser Eigenschaft festgelegt, dann bleibt die Sperrung deaktiviert. Dies ist nützlich, wenn Sie die Benutzer dazu anhalten möchten, für jede Sperrung eine Beschreibung anzugeben. Wenn diese Eigenschaft nicht gesetzt ist, sind leere Sperrmeldungen erlaubt.

  • tsvn:logwidthmarker kann für Projekte benutzt werden, welche Logmeldungen mit einer maximalen Zeilenlänge (typischerweise 80 Zeichen) haben möchten. Wenn diese Eigenschaft auf einen Wert ungleich 0 gesetzt wird, wird einerseits der Wortumbruch für die Logmeldung abgeschaltet und andererseits eine vertikale Linie gezeichnet um die maximale Zeilenlänge anzuzeigen. Auf diese Weise können Sie jederzeit sehen, ob Ihre Logmeldung die maximale Zeilenlänge schon überschreitet oder nicht. Beachten Sie, dass dies nur korrekt funktioniert, wenn Sie eine Schrift mit fester Breite für das Eingabefeld ausgewählt haben.

  • tsvn:logtemplate wird für Projekte benutzt, die Regeln für die Formatierung der Logmeldungen haben. Diese Eigenschaft enthält einen mehrzeiligen Text, der automatisch im Übertragen-Dialog in die Textbox eingefügt wird. Sie können dann diesen Text bei der Übertragung bearbeiten. Wenn Sie gleichzeitig tsvn:logminsize verwenden, stellen Sie sicher dass dieser Wert größer als die Länge der Schablone ist, da sonst dieser Schutz wegfällt.

    Es gibt auch aktionsspezifische Schablonen, die Sie anstelle von tsvn:logtemplate verwenden können. Falls eine aktionsspezifische Schablone definiert ist, wird diese verwendet, ansonsten wird auf tsvn:logtemplate zurückgegriffen.

    Die aktionsspezifischen Schablonen sind::

    • tsvn:logtemplatecommit wird für alle Übertragungen aus einer Arbeitskopie verwendet.

    • tsvn:logtemplatebranch wird verwendet, wenn Sie eine Verzweigung/Marke anlegen oder wenn Sie Dateien/Ordner direkt im Projektarchivbetrachter kopieren.

    • tsvn:logtemplateimport wird für Importe verwendet.

    • tsvn:logtemplatedelete wird verwendet, wenn Objekte im Projektarchivbetrachter gelöscht werden.

    • tsvn:logtemplatemove wird verwendet, wenn Objekte im Projektarchivbetrachter verschoben werden.

    • tsvn:logtemplatemkdir wird verwendet, wenn Verzeichnisse im Projektarchivbetrachter angelegt werden.

    • tsvn:logtemplatepropset wird verwendet, wenn Eigenschaften im Projektarchivbetrachter verändert werden.

    • tsvn:logtemplatelock wird beim Holen einer Sperre verwendet.

  • Subversion erlaubt Ihnen, autoprops anzugeben, die für jede neu hinzugefügte oder importierte Datei, abhängig von der Dateiendung, gesetzt werden. Das erfordert, dass jeder Client die gleichen autoprops in seiner Subversion Konfigurationsdatei stehen hat. tsvn:autoprops können auch auf Ordner gesetzt werden und werden mit den lokalen autoprops des Anwenders zusammengeführt, wenn Dateien zu einem Projektarchiv hinzugefügt oder importiert werden. Das Format ist dasselbe wie bei den Subversion autoprops, z.B. setzt *.sh = svn:eol-style=native;svn:executable zwei Eigenschaften auf Dateien mit der .sh Endung.

    Wenn es einen Konflikt zwischen den lokalen autoprops und tsvn:autoprops gibt, haben die Projekteinstellungen Vorrang vor den allgemeinen Einstellungen.

    Ab Subversion 1.8 sollten Sie die Eigenschaft svn:auto-props anstelle von tsvn:autoprops verwenden, da diese die selbe Funktionalität hat, aber mit allen Subversion Clients funktioniert und nicht TortoiseSVN-spezifisch ist.

  • Im Übertragen-Dialog haben Sie die Möglichkeit, die Liste der geänderten Dateien inklusive des Status (hinzugefügt, geändert, etc) einzufügen. tsvn:logfilelistenglish legt fest, ob die vordefinierten Logmeldungen in englisch oder in einer anderen Sprache eingefügt werden sollen. Der Standardwert ist true.

  • TortoiseSVN kann eine Rechtschreibprüfung benutzen. Unter Windows 10 wird die Rechtschreibprüfung des Betriebssystems verwendet, unter früheren Versionen von Windows die Wörterbücher von OpenOffice oder Mozilla. Wenn Sie ein solches installiert haben, legt diese Eigenschaft fest, welches Sprachmodul für das Projekt benutzt werden soll.tsvn:projectlanguage setzt die Sprache des zu benutzenden Wörterbuchs. Die Werte für die Sprache können Sie hier nachschlagen: MSDN: Language Identifiers.

    Sie können diesen Wert als Dezimalzahl oder, wenn Sie das bevorzugen, als Hexadezimalzahl mit dem Prefix 0x angeben. Zum Beispiel Englisch (US) kann als 0x0409 oder 1033 eingegeben werden.

  • Die Eigenschaft tsvn:logsummary wird verwendet, um einen Abschnitt aus der Logmeldung zu extrahieren, der dann als Zusammenfassung der Logmeldung im Log-Dialog angezeigt wird.

    Die tsvn:logsummary Eigenschaft muss einen einzeiligen regulären Ausdruck enthalten, der eine RegEx-Gruppe enthält. Der Inhalt dieser Gruppe wird als Zusammenfassung verwendet.

    Ein Beispiel: \[ZUSAMMENFASSUNG\]:\s+(.*) Dieser Ausdruck wird alles nach [ZUSAMMENFASSUNG] aus der Logmeldung ausschneiden und als Zusammenfassung verwenden.

  • Mit der Eigenschaft tsvn:logrevregex wird ein regulärer Ausdruck festgelegt, der Referenzen auf Revisionen in Logmeldungen sucht. Im Log-Dialog werden diese Referenzen als anklickbare Verweise angezeigt. Bei einem Mausklick auf einen solchen Verweis im Log-Dialog wird entweder im selben Fenster zu dieser Revision gesprungen, falls die Revision bereits geladen oder im Log-Puffer vorhanden ist oder es wird ein neuer Log-Dialog mit dieser Revision geöffnet.

    Der reguläre Ausdruck muss mit der gesamten Referenz und nicht nur mit der Revisionsnummer übereinstimmen. Die Revisionsnummer wird automatisch aus dem gefundenen Verweistext extrahiert.

    Falls diese Eigenschaft nicht gesetzt ist, wird ein Standardausdruck verwendet, um die Revisionsverweise anzuzeigen.

  • Es gibt mehrere Eigenschaften, um clientseitige Aktionsskripte zu konfigurieren. Jede Eigenschaft gilt für einen bestimmten Typ von Aktionsskripten.

    Die verfügbaren Eigenschaften/Hook-Scripts sind

    • tsvn:startcommithook
    • tsvn:precommithook
    • tsvn:postcommithook
    • tsvn:startupdatehook
    • tsvn:preupdatehook
    • tsvn:postupdatehook
    • tsvn:prelockhook
    • tsvn:postlockhook

    Die Parameter sind mit denen identisch, die Sie zur Konfiguration der Aktionsskripte in den Einstellungen verwenden. Siehe „Clientseitige Aktionsskripte“ für Details.

    Da nicht jeder Anwender seine Arbeitskopie unter dem selben Namen am selben Ort ausgecheckt hat, können Sie ein in Ihrer Arbeitskopie auszuführendes Skript/Programm, festlegen, indem Sie mittels %REPOROOT seine URL im Projektarchiv angeben. Wenn Ihr Aktionsskript zum Beispiel in contrib/hook-scripts/client-side/checkyear.js liegt, können Sie den Pfad zum Skript als %REPOROOT/trunk/contrib/hook-scripts/client-side/checkyear.js angeben. Auf diese Weise müssen Sie die Eigenschaften des Aktionsskripts nicht anpassen, wenn sich die URL ihres Projektarchivs ändert.

    Anstatt %REPOROOT% können Sie auch %REPOROOT+% festlegen. Das + wird benutzt um eine beliebige Anzahl von Pfaden anzugeben, die notwendig sind, um das Script zu finden. Das ist nützlich wenn Sie Ihr Script so angeben möchten, dass es auch gefunden wird, wenn sich die URL der Arbeitskopie geändert hat, weil Sie einen Zweig erzeugen haben. Bei Benutzung des obigen Beispiels würden Sie den Pfad zum Skript als %REPOROOT+%/contrib/hook-scripts/client-side/checkyear.js festlegen.

    Das folgende Bild zeigt, wie das Aktionsskript, das die Quellen von TortoiseSVN auf aktuelle Copyrighteinträge überprüft, eingerichtet wird.

    Abbildung 4.39. Eigenschaftsdialog für Aktionsskripte

    Eigenschaftsdialog für Aktionsskripte


  • Wenn Sie eine neue Eigenschaft hinzufügen wollen, können Sie entweder eine Standardeigenschaft aus der Kombinationsliste wählen oder einen beliebigen Eigenschaftsnamen eingeben. Falls für Ihr Projekt spezifische Eigenschaften verwendet werden, die ebenfalls in der Auswahlliste erscheinen sollen, können Sie mit den TortoiseSVN Eigenschaften tsvn:userfileproperties und tsvn:userdirproperties eine Liste von Projekteigenschaften vorgeben. Wenden Sie die TortoiseSVN Eigenschaften auf einen Ordner an. Sobald Sie anschließend die Eigenschaften eines Unterordners bearbeiten, werden die Projekteigenschaften in der Liste der vorgegebenen Eigenschaftsnamen erscheinen.

    Sie können auch angeben, ob ein benutzerdefiniertes Dialogfeld zum Hinzufügen und Bearbeiten Ihrer Eigenschaft verwendet wird. TortoiseSVN bietet, je nach Art der Eigenschaft, vier verschiedene Dialoge.

    bool

    Wenn Ihre Eigenschaft nur zwei Zustände haben kann, z.B. true und false, legen Sie sie als bool Typen fest.

    Abbildung 4.40. Boolesche Benutzerdaten im Eigenschaftsdialog

    Boolesche Benutzerdaten im Eigenschaftsdialog


    Geben Sie die Eigenschaft folgendermaßen an:

    Eigenschaftsname=bool;Beschreibung(JA-WERT;NEIN-WERT;Checkboxtext)

    Die Beschreibung wird im Dialog oberhalb der Checkbox angezeigt. Sie können damit den Zweck und die Verwendung der Eigenschaft erklären.

    state

    Wenn Ihre Eigenschaft einen von mehreren möglichen Zuständen annehmen kann, z. B. Ja, Nein, Vielleicht, dann können Sie diese als state<placeholder-1> folgendermaßen konfigurieren:Eigenschaftsname=state;Beschreibung (STANDARD;WERT1;TEXT1;WERT2;TEXT2;WERT3;TEXT3;...)Die Eigenschaften sind die gleichen wie bei der bool Eigenschaft, wobei STANDARD der Vorgabewert ist, der verwendet wird, wenn die Eigenschaft nicht definiert ist oder einen nicht konfigurierten Wert enthBei bis zu drei verschiedenen Werten zeigt der Dialog RadioknsinglelineFsingleline: Einzelne Zeile als Benutzerdatentyp im EigenschaftsdialogEigenschaftsname=singleline;Beschreibung(RegEx)Die RegEx definiert einen regulmultilineFmultiline: Mehrzeilige Benutzerdaten im EigenschaftsdialogEigenschaftsname=multiline;Beschreibung(RegEx)Die RegEx definiert einen regul Die Bilder oben wurden mit den folgenden tsvn:userdirproperties erstellt: my:boolprop=bool;Dies ist eine boolesche Eigenschaft. Entweder aktivieren Sie oder deaktivieren Sie sie.(True;False;meine boolesche Eigenschaft) my:stateprop1=state;Dies ist eine Status-Eigenschaft. W</placeholder-1>

TortoiseSVN kann einige Fehlerverfolgungssysteme in Subversion integrieren. Dies geschieht über Eigenschaften, die mit bugtraq: beginnen. Wie Sie mit diesen Eigenschaften umgehen ist in „Integration mit einem System zur Fehlerverfolgung“ erklärt.

TortoiseSVN kann auch mit einigen webbasierten Projektarchivbetrachtern, unter Verwendung von Eigenschaften, die mit webviewer: beginnen, zusammenarbeiten. Lesen Sie „Integration mit webbasierten Projektarchivbetrachtern“ für weitere Informationen.

Setzen Sie die Projekteigenschaften auf Ordner

Diese speziellen Eigenschaften müssen für Ordner und nicht für Dateien gesetzt werden. Wenn Sie einen TortoiseSVN Befehl aufrufen, der diese Eigenschaften verwendet, werden Sie aus dem gewählten Ordner gelesen. Falls die Eigenschaften dort nicht gefunden werden, wird TortoiseSVN im Ordnerbaum aufwärts nach diesen Eigenschaften, bis entweder die Eigenschaften oder der oberste Ordner des Ordnerbaums, z.B. C:\ gefunden wurde. Wenn Sie also sicher sind dass alle Benutzer ihre Arbeitskopie z.B. von /trunk ausgecheckt haben, reicht es aus die Eigenschaften dort zu setzen. Falls Sie hingegen nicht sicher sein können, dann müssen Sie die Eigenschaften rekursiv auf alle Unterordner Ihres Projektes setzen. Wenn sie die selbe Eigenschaft mit unterschiedlichen Werten an verschiedenen Stellen der Projekthierarchie setzen, erhalten Sie unterschiedliche Ergebnisse, je nachdem wohin Sie in der Ordnerstruktur klicken.

Ausschließlich für Projekteigenschaften (z.B. tsvn:, bugtraq: und webviewer:), können Sie die Rekursiv Option wählen, um die Eigenschaft auf alle Unterordner zu übertragen, ohne sie gleichzeitig auch für alle Dateien zu setzen.

Wenn Sie mit TortoiseSVN neue Unterordner zu einer Arbeitskopie hinzufügen, werden sämtliche Projekteigenschaften des Elternordners auf den Unterordner übertragen.

Einschränkungen des Projektarchivbetrachters

Das Holen von Projekteigenschaften vom Server ist eine langsame Operation, so dass einige der oben beschriebenen Operationen im Projektarchivbetrachter nicht genau so wie in einer Arbeitskopie funktionieren.

  • Wenn Sie eine Eigenschaft im Projektarchivbetrachter hinzufügen, werden nur die Standard svn: Eigenschaften zur Auswahl angeboten. Alle anderen Eigenschaftsnamen müssen manuell eingegeben werden.

  • Eigenschaften können über den Projektarchivbetrachter weder rekursiv gesetzt noch gelöscht werden.

  • Projekteigenschaften werden nicht automatisch weitergereicht, wenn ein Unterordner im Projektarchivbetrachter hinzugefügt wird.

  • tsvn:autoprops werden nicht auf Dateien angewendet, die im Projektarchivbetrachter hinzugefügt werden.

Achtung

Obwohl die TortoiseSVN Projekteigenschaften sehr nützlich sind, gelten sie nur für TortoiseSVN und einige von ihnen sogar nur für neuere Versionen von TortoiseSVN. Sobald Projektmitarbeiter verschiedene Subversion Clients oder eventuell alte Versionen von TortoiseSVN einsetzen, sollten Sie besser mit Aktionsskripten im Projektarchiv Projektregeln durchsetzen. Projekteigenschaften können nur beim Einrichten von Regeln helfen, jedoch nicht dabei, diese durchzusetzen.

Eigenschaftseditoren

Einige Eigenschaften müssen bestimmte Werte verwenden, oder auf bestimmte Art formatiert sein, damit sie für die Automatisierung verwendet werden. Um Ihnen die Formatierung zu vereinfachen, stellt TortoiseSVN Dialoge für einige Eigenschaften zur Verfügung, die die Auswahlmöglichkeiten anzeigen oder die Eigenschaft in ihre individuellen Komponenten aufbrechen.

Externer Inhalt

Abbildung 4.41. svn:externals Eigenschaftsseite

svn:externals Eigenschaftsseite


Die svn:externals Eigenschaft kann genutzt werden, um andere Projekte aus dem gleichen oder einem anderen Projektarchiv in die Arbeitskopie einzubinden. Weitere Informationen finden sich in „Externe Objekte“.

Sie müssen die Subversion URL des externen Ordners sowie den Namen des Unterordners angeben, als der der externe Ordner ausgecheckt wird. Sie können Externals in der HEAD Revision auschecken, so dass bei Änderungen am externen Objekt ihre Arbeitskopie die Änderungen erhält. Wenn Sie allerdings möchten, dass das External auf eine bestimmte Revision verweist, können Sie die zu verwendende Revisionsnummer als fixe Revision mit angeben. Falls das externe Objekt in der Zukunft umbenannt wird, kann Subversion es in ihrer Arbeitskopie nicht mehr aktualisieren. Indem sie eine fixe Revision angeben, teilen Sie Subversion mit, in einer bestimmten Revision (anstelle HEAD) nach dem Objekt mit dem angegebenen Namen zu suchen.

Die Schaltfläche HEAD Revision finden holt die HEAD Revision jeder externen URL und zeigt sie in der rechten Spalte an. Nachdem diese Revision bekannt ist, genügt ein einfacher Doppelklick, um den externen Verweis fest an diese HEAD Revision zu binden. Falls die HEAD Revision noch nicht bekannt ist, wird sie bei einem Rechtsklick zunächst geholt.

SVN Schlüsselwörter

Abbildung 4.42. svn:keywords Eigenschaftsseite

svn:keywords Eigenschaftsseite


Wählt die Schlüsselwörter aus, die in der Datei expandiert werden sollen.

Zeilenendestil

Abbildung 4.43. svn:eol-style Eigenschaftsseite

svn:eol-style Eigenschaftsseite


Stellen Sie den von Ihnen gewünschten Zeilenendestil ein und TortoiseSVN wird den korrekten Wert verwenden.

Integration mit Fehlerverfolgungssystemen

Abbildung 4.44. tsvn:bugtraq Eigenschaftsseite

tsvn:bugtraq Eigenschaftsseite


Größen der Logmeldungen

Abbildung 4.45. Eigenschaften der Logmeldungen

Eigenschaften der Logmeldungen


These 3 properties control the formatting of log messages. The first 2 disable the OK in the commit or lock dialogs until the message meets the minimum length. The border position shows a marker at the given column width as a guide for projects which have width limits on their log messages. Setting a value to zero will delete the property.

Projektsprache

Abbildung 4.46. Sprach-Eigenschaftsseite

Sprach-Eigenschaftsseite


Legt die Sprache für die Rechtschreibprüfung der Logmeldungen im Übertragen-Dialog fest. Die Option Dateilisten wird tätig, wenn sie einen Rechtsklick in die Logmeldung machen und Dateiliste einfügen wählen. Standardmäßig wird der Subversion Status in ihrer Sprache angezeigt. Sobald diese Option aktiv ist, wird der Status immer auf Englisch, für Projekte, die rein englische Logmeldungen erfordern, eingefügt.

MIME-Typ

Abbildung 4.47. svn:mime-type Eigenschaftsseite

svn:mime-type Eigenschaftsseite


svn:needs-lock

Abbildung 4.48. svn:needs-lock Eigenschaftsseite

svn:needs-lock Eigenschaftsseite


This property simply controls whether a file will be checked out as read-only if there is no lock held for it in the working copy.

svn:executable

Abbildung 4.49. svn:executable Eigenschaftsseite

svn:executable Eigenschaftsseite


This property controls whether a file will be given executable status when checked out on a Unix/Linux system. It has no effect on a Windows checkout.

Vorlage für Zusammenführen-Log

Jedes Mal, wenn Revisionen in einer Arbeitskopie zusammengeführt werden, erzeugt TortoiseSVN eine Logmeldung daraus. Diese Meldungen können über die Letzte Meldungen Schaltfläche im Übertragen Dialog abgerufen werden.

Sie können die generierte Nachricht mit den folgenden Eigenschaften anpassen:

Abbildung 4.50. Eigenschaftsdialog Vorlage für Zusammenführen-Log

Eigenschaftsdialog Vorlage für Zusammenführen-Log


tsvn:mergelogtemplatetitle, tsvn:mergelogtemplatereversetitle

Diese Eigenschaft definiert den ersten Teil der generierten Protokollmeldung. Die folgenden Schlüsselwörter können verwendet werden:

{revisions}

Eine kommaseparierte Liste der zusammengeführten Revisionen, z. B. 3, 5, 6, 7

{revisionsr}

Wie {revisions}, aber jeder Revision wird ein r vorangestellt, z.B. r3, r5, r6, r7

{revrange}

Eine kommaseparierte Liste der zusammengeführten Revisionen, wenn möglich in Bereiche gruppiert, z.B. 3, 5-7

{mergeurl}

Die Quell-URL des Zusammenführens, d. h. von wo die Revisionen zusammengeführt werden.

Der Standardwert für diese Zeichenfolge ist Revision(en) {Revrange} von {Mergeurl} zusammengeführt:, mit einem Zeilenumbruch am Ende.

tsvn:mergelogtemplatemsg

Diese Eigenschaft gibt an, wie der Text für jede zusammengeführte Revision aussehen soll. Die folgenden Schlüsselwörter können verwendet werden:

{msg}

Die Logmeldung der zusammengeführten Revision, wie sie eingegeben wurde.

{msgoneline}

Wie {msg}, aber alle Zeilenumbrüche werden durch ein Leerzeichen ersetzt, so dass die ganze Logmeldung auf einer einzigen Zeile angezeigt wird.

{author}

Der Autor der zusammengeführten Revision.

{rev}

Die zusammengeführte Version selbst.

{bugids}

Der Fehler-IDs der zusammengeführten Revision, wenn es welche gibt.

tsvn:mergelogtemplatemsgtitlebottom

Diese Eigenschaft gibt die Position des Titels, der mittels tsvn:mergelogtemplatetitle oder tsvn:mergelogtemplatereversetitle festgelegt wurde, an. Wenn die Eigenschaft auf yes oder true gesetzt wird, wird der Titel ans Ende und nicht an den Anfang gesetzt.

Wichtig

Dies funktioniert nur, wenn die zusammengeführten Revisionen bereits im Log-Puffer sind. Wenn Sie den Log-Puffer deaktiviert oder das Log vor dem Zusammenführen nicht angezeigt haben, wird die generierte Meldung keine Informationen über die zusammengeführten Revisionen enthalten.