Anhang F. Implementierungsdetails

Inhaltsverzeichnis

Überlagerte Symbole

Dieser Anhang enthält einige interne Informationen über die Arbeitsweise von TortoiseSVN.

Überlagerte Symbole

Jede Datei und jeder Ordner besitzt einen Statuswert in Subversion. Im Kommandozeilenclient werden diese durch einzelne Buchstaben gekennzeichnet, in TortoiseSVN durch überlagerte Symbole. Da die Anzahl der zur Verfügung stehenden überlagerten Symbole durch Windows eingeschränkt wird, kann ein Symbol für mehrere Statuswerte stehen.

Das Konflikt Symbol wird verwendet, um anzuzeigen, dass beim Aktualisieren oder Wechseln zu ein Konflikt zwischen lokalen Änderungen und Änderungen in der Arbeitskopie auftrat. Weiterhin wird durch dieses Symbol der Versperrt Status angezeigt.

Sobald Sie eine Datei ändern, ändert sich auch der Status der Datei auf Verändert. Mit diesem Symbol werden auch Zusammengeführte oder Ersetzte Dateien gekennzeichnet. Auf diese Weise können Sie mit einem Blick feststellen, welche Dateien Sie geändert und noch nicht in das Projektarchiv übertragen haben.

Dieses überlagerte Symbol zeigt, dass Dateien oder Ordner zum Löschen aus der Versionskontrolle markiert wurden oder dass TortoiseSVN eine Datei unter Versionskontrolle vermisst. Eine fehlende Datei kann natürlich dieses Symbol nicht erhalten, aber der Elternordner zeigt es an, sobald ein Unterobjekt vermisst wird.

Dieses Symbol zeigt an, dass eine Datei oder ein Ordner neu zur Versionskontrolle Hinzugefügt wurde.

Dieses Symbol bedeutet dass der Subversion Status Normal ist oder dass es sich um ein versioniertes Objekt handelt, dessen Status noch nicht bekannt ist. Da TortoiseSVN im Hintergrund einen Statusspeicher verwendet, kann es ein paar Sekunden dauern, bis das Symbol aktualisiert wird.

Das Benötigt Sperre/emphasis> Symbol zeigt an, dass die svn:needs-lock Eigenschaft einer Datei gesetzt ist.

Das Gesperrt Symbol zeigt an, dass die lokale Arbeitskopie die Sperre für die Datei besitzt.

Dieses Symbol bedeutet dass dieses Objekt von Subversion Ignoriert wird. Das kann aufgrund eines globalen Ignoriermusters oder der svn:ignore Eigenschaft des Elternobjekts der Fall sein. Dieses Symbol ist optional.

Dieses Symbol zeigt an, dass eine Datei oder ein Ordner Nicht Versioniert ist. Das Objekt liegt innerhalb eines versionierten Ordners, befindet sich jedoch selbst nicht unter Versionskontrolle. Dieses Symbol ist optional.

Wenn ein Objekt sich nicht in einer Arbeitskopie befindet (Subversion-Status none), wird kein überlagertes Symbol angezeigt. Wenn Sie die Ignoriert und Nicht Versioniert Symbole abgeschaltet haben, wird für solche Objekte auch innerhalb einer Arbeitskopie kein Symbol angezeigt.

Ein Objekt kann nur einen Subversion Status besitzen. Zum Beispiel kann eine Datei lokal verändert und gleichzeitig zum Löschen markiert sein. Subversion gibt in diesem Fall nur einen Wert - gelöscht zurück. Diese Prioritäten sind in Subversion selbst festgelegt.

Wenn TortoiseSVN den Status rekursiv anzeigt (die Standardeinstellung), erhält jeder Ordner ein Symbol, das seinen eigenen sowie die Status aller seiner Kinder anzeigt. Damit ein Summensymbol angezeigt werden kann, verwenden wir die obenstehende Reihenfolge, um festzulegen, welches Symbol verwendet wird, wobei Konflikt die höchste Priorität hat.

Sie werden möglicherweise feststellen, dass nicht alle diese Symbole auf Ihrem Rechner dargestellt werden. Das liegt daran, dass Windows die Anzahl der überlagerten Symbole beschränkt auf 15. Windows selber verwendet 4, und die restlichen 11 werden geteilt von allen anderen Programmen. Wenn nicht mehr genug Plätze frei sind, versucht TortoiseSVN ein Guter Bürger (tm) zu sein und schränkt seine Verwendung von überlagerten Symbolen ein, damit andere Anwendungen eine Chance haben.

Da es auch Tortoise Clients für andere Versionskontrollsysteme gibt, haben wir eine gemeinsame Komponente entwickelt, die für die Anzeige der überlagerten Symbole zuständig ist. Die technischen Details sind hier nicht wichtig. Alles was sie wissen müssen, ist, dass diese Komponente es allen Tortoise Clients ermöglicht, dieselben überlagerten Symbole zu verwenden und dass dadurch die elf verfügbaren Plätze nicht durch die Installation mehrerer Tortoise Clients verbraucht werden. Natürlich gibt es auch einen kleinen Nachteil: Alle Tortoise Clients verwenden die selben überlagerten Symbole und sie können anhand der Symbole nicht mehr auf einen Blick erkennen, welches Versionskontrollsystem zu einer Arbeitskopie gehört.

  • Normal, Verändert und Konflikt sind immer geladen und sichtbar.

  • Gelöscht wird, wenn möglich geladen, fällt aber auf Verändert zurück, wenn nicht genügend Plätze frei sind.

  • Schreibgeschützt wird, wenn möglich geladen, fällt aber auf Verändert zurück, wenn nicht genügend Plätze frei sind.

  • Gesperrt wird, wenn möglich geladen, fällt aber auf Normal zurück, wenn nicht genügend Plätze frei sind.

  • HInzugefügt wird, wenn möglich geladen, fällt aber auf Verändert zurück, wenn nicht genügend Plätze frei sind.