Während Sie an Ihrem Projekt arbeiten, müssen Sie oft wissen, welche Dateien geändert wurden, welche Sie neu hinzugefügt haben, welche Sie gelöscht haben oder auch, welche Dateien von anderen geändert und zum Projektarchiv übertragen wurden.
Nun, da Sie eine frisch ausgecheckte Arbeitskopie eines Subversion-Projektarchivs haben, zeigt Ihnen der Explorer diese Dateien und Ordner mit leicht geänderten Symbolen an. Dies ist mit ein Grund, weshalb TortoiseSVN so populär ist. TortoiseSVN fügt jedem Datei-/Ordnersymbol ein kleines überlagertes Symbol hinzu. Abhängig vom Subversion-Status der Datei ist das Überlagerungssymbol unterschiedlich.
Eine frisch ausgecheckte Arbeitskopie hat nur überlagerte Symbole mit grünem Haken. Dies bedeutet, dass der Subversion-Status normal ist.
Sobald Sie eine Datei ändern, ändert sich auch der Status der Datei auf verändert und das überlagerte Symbol ändert sich in ein rotes Ausrufezeichen. Auf diese Weise können Sie mit einem Blick feststellen, welche Dateien Sie geändert und noch nicht in das Projektarchiv übertragen haben.
Falls während einer Aktualisierung ein Konflikt auftrat, werden solche Dateien mit einem gelben Ausrufezeichen markiert.
Wenn eine Datei die svn:needs-lock
-Eigenschaft besitzt, setzt Subversion den Schreibschutz für diese Datei, bis Sie eine Sperre für die Datei holen. Schreibgeschützte Dateien erhalten dieses Symbol, um anzuzeigen, dass Sie die Datei erst sperren müssen, bevor Sie sie bearbeiten können.
Wenn Sie die Sperre für eine Datei besitzen und der Subversion-Status normal ist, erinnert Sie dieses Symbol daran, dass Sie die Sperre wieder freigeben müssen, wenn Sie sie nicht benötigen, damit andere ihre Änderungen übertragen können.
Dieses überlagerte Symbol zeigt, dass Dateien oder Ordner zum Löschen aus der Versionskontrolle markiert wurden oder dass TortoiseSVN eine Datei unter Versionskontrolle vermisst.
Das Pluszeichen bedeutet, dass eine Datei oder ein Ordner neu zur Versionskontrolle hinzugefügt wurde.
Das Balkensymbol bedeutet, dass eine Datei oder ein Ordner von der Versionskontrolle ignoriert wird. Dieses Symbol ist optional.
Dieses Symbol wird für Dateien und Ordner verwendet, die sich weder unter Versionskontrolle befinden noch ignoriert sind. Das Symbol ist optional.
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. Windows selber verwendet einige. Wenn Sie gleichzeitig eine ältere Version von TortoiseCVS installiert haben, sind nicht genügend Plätze für die Symbole beider Anwendungen frei. Deshalb 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 mittlerweile viele Tortoise-Clients gibt (TortoiseCVS, TortoiseHG ...) wird die Beschränkung der überlagerten Symbole zu einem echten Problem. Als Lösungsansatz wurde im TortoiseSVN-Projekt ein gemeinsamer Satz von Symbolen implementiert, der als DLL geladen wird und von allen Tortoise-Clients genutzt werden kann. Fragen Sie Ihren Tortoise-Anbieter, ob er die gemeinsam genutzten Symbole bereits unterstützt :-)
Eine Beschreibung, wie die überlagerten Symbole mit dem Subversion-Status zusammenhängen und weitere technische Details finden sich in „Überlagerte Symbole“.
Manchmal ist es notwendig, detailliertere Informationen über eine Datei oder einen Ordner zu haben, als dies mit den überlagerten Symbolen möglich ist. Sie können diese zusätzlichen Informationen über den Eigenschaftsdialog des Explorers anzeigen. Wählen Sie dazu die Datei oder den Ordner aus, öffnen Sie das Kontextmenü mit der rechten Maustaste und wählen Sie den Eintrag → aus. Beachten Sie: Dies ist der normale Eintrag im Kontextmenü des Explorers und nicht der Eintrag im TortoiseSVN-Untermenü! Im darauffolgenden Dialog hat TortoiseSVN einen Karteireiter für Dateien/Ordner unter Subversionkontrolle angelegt, auf dem Sie alle Informationen finden.
Oft ist es nützlich zu wissen, welche Dateien von anderen bereits geändert und im Projektarchiv gespeichert wurden. Dazu gibt es den Befehl → . Dieser Dialog zeigt Ihnen alle veränderten oder unversionierten Dateien in Ihrer Arbeitskopie.
Mit der Schaltfläche Umschalt-Taste gedrückt, während Sie auf klicken.
können Sie das Projektarchiv auf Änderungen prüfen. Auf diese Weise können Sie vor dem Aktualisieren feststellen, ob es möglicherweise Konflikte gibt. Sie können aus diesem Dialog heraus auch einzelne Dateien - ohne den gesamten Ordner - aus dem Projektarchiv aktualisieren. Standardmäßig holt nur den Status des Projektarchivs, entsprechend der Tiefe der Arbeitskopie. Wenn Sie alle Dateien und Ordner des Projektarchivs, inklusive derer sehen möchten, die Sie nicht ausgecheckt haben, halten Sie dieDer Dialog verwendet eine Farbcodierung, um verschiedene Status anzuzeigen.
Lokal veränderte Objekte.
Wenn unveränderte Dateien innerhalb eines verschobenen Verzeichnisses liegen, zeigt der Status ein +
Zeichen in der StatusSpalte. Zusätzlich wird die Datei blau eingefärbt angezeigt.
Hinzugefügte Objekte. Objekte, die mit Historie hinzugefügt wurden, erhalten ein +
Zeichen in der Spalte Text Status und ein Hinweistext zeigt an, woher die Kopie stammt.
Gelöschte oder fehlende Objekte.
Objekte, die lokal und im Projektarchiv verändert wurden. Die Änderungen werden beim Aktualisieren zusammengeführt. Diese Objekte können Konflikte beim Aktualisieren erzeugen.
Lokal veränderte Objekte, die im Projektarchiv gelöscht wurden oder im Projektarchiv geänderte Objekte, die lokal gelöscht wurden. Diese Objekte werden Konflikte beim Aktualisieren erzeugen.
Unveränderte und nicht versionierte Objekte.
Dies ist das Standard-Farbschema, aber Sie können die Farben im Einstellungsdialog anpassen. Siehe „TortoiseSVN-Farben“ für weitere Informationen.
Die überlagerten Symbole dienen auch dazu, andere Status anzuzeigen. Das folgende Bild zeigt alle möglichen, bei Bedarf angezeigten, überlagerten Symbole.
Überlagerte Symbole werden für die folgenden Zustände angezeigt:
Rekursionstiefe leer
bedeutet nur das Objekt selbst.
Rekursionstiefe Dateien
bedeutet das Objekt selbst sowie dessen untergeordneten Dateien, aber keine Ordner.
Rekursionstiefe Direkte Unterobjekte
bedeutet das Objekt selbst sowie dessen untergeordnete Dateien und Ordner, aber nicht die Unterobjekte der Ordner.
Verschachtelte Elemente, d. h., Arbeitskopien innerhalb der Arbeitskopie.
Externe Objekte, d. h., alle Elemente, die über eine svn:externals
-Eigenschaft eingebunden werden.
Elemente, die nach dem Übertragen wiederhergestellt werden. Lesen Sie „Nur Teile von Dateien übertragen“ für Details.
Elemente, deren svn:mergeinfo
-Eigenschaft geändert wurde. Für Änderungen an anderen Eigenschaften wird das Symbol nicht verwendet.
Objekte, die zu einem anderen Pfad im Projektarchiv gewechselt wurden, werden durch ein (s)
gekennzeichnet. Vielleicht haben Sie während der Entwicklung etwas auf einen Zweig umgeschaltet und vergessen, zurück zu trunk zu wechseln. Dies ist Ihr Warnzeichen! Das Kontextmenü erlaubt es Ihnen, auf den normalen Pfad zurück zu wechseln.
Aus dem Kontextmenü des Dialoges heraus können Sie sich die Unterschiede anzeigen lassen. Wählen Sie die lokalen Änderungen, die Sie gemacht haben, mittels → . Prüfen Sie die Änderungen im Projektarchiv, die andere gemacht haben, mittels
Sie können auch Änderungen in einzelnen Dateien rückgängig machen. Wenn Sie aus Versehen eine Datei gelöscht haben, wird sie in diesem Dialog als Fehlend angezeigt und kann mittels Rückgängig wiederhergestellt werden.
Nicht versionierte und ignorierte Dateien können von hier aus mittels Umschalt-Taste gedrückt, während Sie Löschen klicken.
→ direkt in den Papierkorb verschoben werden. Wenn Sie die Dateien unter Umgehung des Papierkorbes permanent löschen wollen, halten Sie dieWenn Sie eine Datei im Detail betrachten möchten, können Sie sie von hier aus in eine andere Anwendung, z. B. einen Texteditor oder eine Entwicklungsumgebung, ziehen oder Sie können eine Kopie speichern, indem Sie die Datei einfach in einen Ordner im Explorer ziehen.
Die angezeigten Spalten können angepasst werden. Wenn Sie einen Rechtsklick auf einen Spaltenkopf machen, erscheint ein Kontextmenü, aus dem Sie die anzuzeigenden Spalten auswählen können. Sie können auch die Spaltenbreiten anpassen, indem Sie die Spaltenköpfe mit den Ziehmarken justieren. Diese Einstellungen werden gespeichert, sodass Sie beim nächsten Mal wieder die gleichen Spalten sehen.
Wenn Sie gleichzeitig an mehreren voneinander unabhängigen Aufgaben arbeiten, können Sie Dateien in Änderungslisten zusammenfassen. Lesen Sie „Änderungslisten“ für weitere Informationen.
Am unteren Rand des Dialoges sehen Sie eine Zusammenfassung der Revisionen in Ihrer Arbeitskopie. Es handelt sich dabei um die übertragenen Revisionen, nicht die aktualisierten. Sie stellen den Revisionsbereich dar, in dem die Dateien zuletzt übertragen wurden. Beachten Sie bitte, dass der angezeigte Bereich sich nur die dargestellten Objekte bezieht, nicht auf alle in der Arbeitskopie vorhandenen Objekte. Wenn Sie diese Information sehen möchten, wählen Sie die Option Zeige unmodifizierte Daten.
Wenn Sie eine flache Ansicht Ihrer Arbeitskopie (also alle Dateien und Ordner in einer Liste) wollen, dann ist der Prüfe auf Änderungen-Dialog der einfachste Weg, das zu erreichen. Wählen Sie einfach die Option Zeige unmodifizierte Dateien, um alle Dateien in Ihrer Arbeitskopie anzuzeigen.
Manchmal werden Dateien außerhalb von Subversion umbenannt. Sie werden in der Dateiliste als eine fehlende und eine nicht-versionierte Datei angezeigt. Damit Sie die Historie der Datei nicht verlieren, müssen Sie Subversion über die Umbenennung informieren. Markieren Sie einfach beide, die alte (fehlende) und die neue (unversionierte) Datei und wählen Sie
→ , um die beiden Dateien zu einer Umbenennung zusammenzufassen.Wenn Sie eine Datei kopiert haben, ohne den entsprechenden Subversion-Befehl zu benutzen, können Sie diese Kopie reparieren, sodass die neue Datei ihre Historie nicht verliert. Markieren Sie einfach beide, die alte (normal oder verändert) und die neue (unversionierte) Datei und wählen Sie
→ , um die beiden Dateien zu einer Kopie zusammenzufassen.Oft möchten Sie sehen, was Sie in einer Datei geändert haben. Das können Sie durch das Markieren einer Datei mit dem TortoiseSVN-Kontextmenübefehl BASE
-Revision) seit dem letzten Auschecken oder Aktualisieren anzeigt.
Auch wenn Sie sich nicht in einer Arbeitskopie befinden oder mehrere Versionen einer Datei haben, können Sie diese vergleichen:
Wählen Sie die beiden Dateien, die Sie vergleichen wollen (z. B. mit Strg und Maus) und wählen Sie unter TortoiseSVN im Kontextmenü. Die zuletzt markierte Datei (die mit dem Fokus, der gestrichelte Rahmen) wird als die neuere betrachtet.