Manuals

Log-Dialog

Für jede Änderung, die Sie machen und zum Projektarchiv übertragen, müssen Sie eine Logmeldung eingeben, welche die Änderung beschreibt. Damit können Sie später herausfinden, welche Änderungen wer wann gemacht hat. Auf diese Weise haben Sie eine detaillierte Aufzeichnung über den Fortschritt Ihres Projektes.

Der Log-Dialog lädt alle diese Logmeldungen aus dem Projektarchiv und zeigt Ihnen diese einschließlich einer Liste der Dateien, die in jeder Übertragung verändert wurden. Die Anzeige ist in drei Bereiche aufgeteilt.

Aber sie kann noch viel mehr: Sie bietet Kontextmenü-Befehle, mit denen Sie noch mehr Informationen über die Projekthistorie erhalten können.

Den Log-Dialog starten

Abbildung 4.18. Der Log-Dialog

Der Log-Dialog


Es gibt mehrere Orte, von denen Sie den Log-Dialog starten können:

  • Aus dem TortoiseSVN-Kontextmenü

  • Aus der Eigenschaftsseite

  • Aus dem Fortschrittsdialog, nachdem eine Aktualisierung beendet wurde. Dann jedoch zeigt der Log-Dialog nur die Einträge, die seit Ihrer letzten Aktualisierung gemacht wurden.

  • Aus dem Projektarchivbetrachter

Wenn das Projektarchiv nicht erreicht werden kann, wird der Offline gehen-Dialog, angezeigt, der in „Offline-Modus“ beschrieben wird.

Aktionen im Revisionslog

Der obere Bereich enthält eine Aktionen-Spalte, in der Symbole die Änderungen einer Revision zusammenfassen. Es gibt vier verschiedene Symbole, die jeweils in einer eigenen Spalte angezeigt werden.

in der ersten Spalte zeigt an, dass in einer Revision eine Datei oder ein Ordner geändert wurde.

in der zweiten Spalte zeigt an, dass in einer Revision eine Datei oder ein Ordner neu zur Versionskontrolle hinzugefügt wurde.

in der dritten Spalte zeigt an, dass in einer Revision eine Datei oder ein Ordner aus der Versionskontrolle gelöscht wurde.

in der vierten Spalte zeigt an, dass in einer Revision eine Datei oder ein Ordner ersetzt wurde.

in der vierten Spalte zeigt an, dass in einer Revision eine Datei oder ein Ordner verschoben wurde.

in der vierten Spalte zeigt an, dass in einer Revision eine Datei oder ein Ordner verschoben bzw. umbenannt wurde.

in der vierten Spalte zeigt an, dass in einer Revision eine Datei oder ein Ordner zusammengeführt wurde.

in der vierten Spalte zeigt an, dass in einer Revision eine Datei oder ein Verzeichnis rückwärts zusammengeführt wurde.

Zusätzliche Informationen erhalten

Abbildung 4.19. Das Kontextmenü des Log-Dialogs

Das Kontextmenü des Log-Dialogs


Der obere Bereich des Log-Dialogs besitzt ein Kontextmenü, das Ihnen Zugriff auf weitere Informationen ermöglicht. Einige Funktionen stehen nur bei Dateien, andere bei Ordnern zur Verfügung.

Vergleiche mit Arbeitskopie

Ein Vergleichsprogramm starten, um Ihnen die Änderungen, die seit der gewählten Revision vorgenommen worden, anzuzeigen. Das mit TortoiseSVN installierte Vergleichsprogramm ist TortoiseMerge. Wurde der Log-Dialog für einen Ordner aufgerufen, so wird in TortoiseMerge eine Liste der geänderten Dateien angezeigt. Aus dieser Liste können Sie einen Eintrag wählen, um die Änderungen für jede Datei einzeln zu betrachten.

Vergleiche und Annotiere mit Arbeitskopie BASE

Nur für Dateien: Die gewählte Revision sowie die BASE-Version annotieren und das Ergebnis in einem Vergleichsprogramm darstellen. Lesen Sie „Unterschiede annotieren“ für weitere Informationen.

Unterschiede als Standard-Diff anzeigen

Die Änderungen an allen Dateien in der gewählten Revision im Standard-Diff (GNU Patch-Format) anzeigen. Dieses Format zeigt nur die Unterschiede mit ein paar Zeilen Kontext an. Es ist schwieriger zu lesen als ein visueller Vergleich, aber es zeigt alle Änderungen auf einmal.

Wenn Sie die Umschalt-Taste gedrückt halten, wenn Sie auf das Menüelement klicken, wird zuerst ein Dialogfeld angezeigt, in dem Sie Einstellungen für den Standard-Diff festlegen können. Sie können zum Beispiel Änderungen in Leerzeichen und Zeilenenden ignorieren.

Vergleiche mit vorheriger Revision

Die gewählte Revision mit der vorherigen Revision vergleichen. Dies funktioniert ähnlich wie ein Vergleich mit Ihrer Arbeitskopie. Bei Ordnern werden zunächst die geänderten Dateien angezeigt, sodass Sie die Dateien für den Vergleich auswählen können.

Vergleiche und Annotiere mit vorheriger Revision

Nur für Ordner: Die Liste der geänderten Dateien anzeigen, um die zu vergleichenden Dateien auszuwählen. Die gewählte sowie die vorherige Revision annotieren und das Ergebnis in einem Vergleichsprogramm darstellen.

Speichere Revision unter...

Nur für Dateien: Die gewählte Revision speichern, sodass Sie eine ältere Version der Datei erhalten.

Öffnen / Öffnen mit...

Nur für Dateien: Die markierte Datei entweder mit dem Standardprogramm für den Dateityp oder mit einem von Ihnen gewählten Programm öffnen.

Annotieren...

Nur für Dateien: Die Datei bis zur gewählten Revision annotieren.

Das Projektarchiv betrachten

Den Projektarchivbetrachter öffnen, um das markierte Objekt in der gewählten Revision des Projektarchivs zu betrachten.

Erstelle Zweig/Marke von Revision

Einen Zweig oder eine Marke für die gewählte Revision erstellen. Dies ist nützlich für den Fall, dass Sie vergessen haben, eine bestimmte Version Ihres Projektes zu markieren und Sie seitdem bereits weitere Änderungen in das Projektarchiv übertragen haben.

Aktualisiere zu Revision

Ihre Arbeitskopie zu einer bestimmten Revision aktualisieren. Nützlich, wenn Sie möchten, dass Ihre Arbeitskopie einem Zustand in der Vergangenheit entspricht oder wenn es weitere Übertragungen im Projektarchiv gibt, die Sie schrittweise übernehmen wollen. Es ist am besten, ein komplettes Arbeitsverzeichnis und nicht nur eine einzelne Datei zu aktualisieren, da andernfalls Ihre Arbeitskopie inkonsistent sein wird und Sie keine Änderungen übertragen können.

Falls Sie eine frühere Änderung vollständig zurücknehmen wollen, verwenden Sie stattdessen Rückgängig zu dieser Revision.

Rückgängig zu dieser Revision

Zu einer früheren Revision zurückkehren. Wenn Sie mehrere Änderungen vorgenommen haben und nun beschließen, dass Sie den Zustand in Revision N wiederherstellen wollen, ist das der Befehl Ihrer Wahl. Wieder werden die Änderungen nur in Ihrer Arbeitskopie rückgängig gemacht. Die Aktion beeinflusst das Projektarchiv zunächst nicht, bis Sie die Änderungen wieder übertragen haben. Beachten Sie, dass diese Aktion alle Änderungen nach der gewählten Revision rückgängig macht und das Objekt durch die gewählte Revision ersetzt.

Wenn Ihre Arbeitskopie vor dieser Aktion unmodifiziert war, wird sie anschließend das Modifiziert-Symbol anzeigen. Falls Sie bereits lokale Änderungen vorgenommen haben, wird dieser Befehl die Rückgängig-Änderungen in Ihrer Arbeitskopie zusammenführen.

Intern führt Subversion alle Änderungen seit dieser Revision rückwärts zusammen, sodass sie insgesamt zurückgenommen werden.

Wenn Sie beschließen, dass Sie die Rückgängig-Aktion rückgängig machen und Ihre Arbeitskopie in ihren vorherigen Zustand versetzen wollen, sollten Sie TortoiseSVNRückgängig aus dem Explorer-Kontextmenü wählen. Dadurch werden die durch das Rückwärts-Zusammenführen erzeugten lokalen Änderungen verworfen.

Wenn Sie nur sehen möchten, wie eine Datei oder ein Ordner in einer früheren Revision aussahen, rufen Sie stattdessen Aktualisiere zu Revision oder Speichere Revision unter... auf.

Änderungen dieser Revision rückgängig machen

Änderungen in einer bestimmten Revision rückgängig machen. Die Änderungen werden in Ihrer Arbeitskopie rückgängig gemacht, das Projektarchiv selbst bleibt unverändert! Beachten Sie bitte, dass nur die Änderungen dieser Revision rückgängig gemacht werden. Es wird nicht die gesamte Datei in der früheren Revision wiederhergestellt. Dieser Befehl ist nützlich, wenn Sie Änderungen zurücknehmen wollen, aber spätere, nicht damit zusammenhängende Änderungen beibehalten möchten.

Wenn Ihre Arbeitskopie vor dieser Aktion unmodifiziert war, wird sie anschließend das Modifiziert-Symbol anzeigen. Falls Sie bereits lokale Änderungen vorgenommen haben, wird dieser Befehl die Rückgängig-Änderungen in Ihrer Arbeitskopie zusammenführen.

Intern führt Subversion die Änderungen dieser Revision rückwärts zusammen, sodass sie aus einer vorherigen Übertragung entfernt werden.

Sie können, wie unter Rückgängig zu dieser Revision beschrieben, die Rückgängig-Aktion rückgängig machen.

Revision zusammenführen in...

Führt die gewählten Revisionen in einer anderen Arbeitskopie zusammen. Ein Dialog ermöglicht es Ihnen, die Ziel-Arbeitskopie auszuwählen, aber danach gibt es weder eine Bestätigung noch eine Möglichkeit, einen Testlauf durchzuführen. Es ist eine gute Idee, das Zusammenführen in einer unmodifizierten Arbeitskopie zu testen, sodass Sie die Änderungen rückgängig machen können, wenn es nicht geklappt hat! Dies ist eine nützliche Funktion, wenn Sie Revisionen von einem Zweig auf einen anderen übertragen möchten.

Auschecken...

Eine neue Arbeitskopie des markierten Ordners in der gewählten Revision erstellen. Im folgenden Dialog können Sie die URL und Revision überprüfen und ein Ziel für die Arbeitskopie festlegen.

Exportieren...

Den markierten Ordner in der gewählten Revision exportieren. Im folgenden Dialog können Sie die URL und Revision überprüfen und ein Ziel für den Export festlegen.

Autor/Logmeldung bearbeiten

Die Logmeldung oder den Autor der Übertragung ändern. Lesen Sie „Ändern der Logmeldung und des Autors“, um herauszufinden, wie dies funktioniert.

Revisionseigenschaften zeigen

Eine beliebige Revisionseigenschaft, nicht nur Logmeldung und Autor, bearbeiten. Weiteres in „Ändern der Logmeldung und des Autors“.

In Zwischenablage kopieren

Die Logdetails der gewählten Revisionen in die Zwischenablage kopieren. Dieser Befehl kopiert Revisionsnummer, Autor, Datum, Logmeldung sowie die Liste der geänderten Objekte jeder Revision in die Zwischenablage.

Logmeldungen durchsuchen...

Die Logmeldungen durchsuchen. Die von Subversion generierte Liste der geänderten Dateien im unteren Bereich wird mit einbezogen. Die Suche ignoriert Groß-/Kleinschreibung.

Code Collaborator-Rezension anlegen...

Dieses Menü wird nur angezeigt, wenn das SmartBear Code Collaborator Tool installiert ist. Beim ersten Aufruf wird ein Dialog angezeigt, in den Sie die Anmeldeinformationen für Code Collaborator und SVN eingeben. Nachdem die Einstellungen gespeichert wurden, wird der Einstellungsdialog nicht mehr angezeigt, wenn das Menü aufgerufen wird, es sei denn, Sie halten Strg gedrückt, während Sie das Menü aufrufen. Die Konfiguration und die gewählten Revisionen werden zum Aufruf der grafischen Code Collaborator-Schnittstelle verwendet, der eine neue Rezension mit den gewählten Revisionen erstellt.

Abbildung 4.20. Der Code Collaborator-Einstellungsdialog

Der Code Collaborator-Einstellungsdialog


Abbildung 4.21. Kontextmenü des Log-Dialogs für zwei ausgewählte Revisionen

Kontextmenü des Log-Dialogs für zwei ausgewählte Revisionen


Wenn Sie (mit Strg) zwei Revisionen auf einmal auswählen, reduziert sich das Kontextmenü auf folgende Funktionen:

Revisionen vergleichen

Die gewählten Revisionen vergleichen. Das Standard-Vergleichsprogramm ist TortoiseMerge, das mit TortoiseSVN installiert wird.

Wenn Sie diese Funktion für einen Ordner wählen, erscheint ein Folgedialog, der die geänderten Dateien anzeigt und Ihnen weitere Vergleichsoptionen anbietet. Lesen Sie mehr dazu in „Ordner vergleichen“.

Revisionen annotieren

Die gewählten Revisionen annotieren und die Ergebnisse mit einem Vergleichsprogramm darstellen. Lesen Sie „Unterschiede annotieren“ für weitere Details.

Unterschiede als Standard-Diff anzeigen

Die gewählten Revisionen vergleichen und als Standard-Diff anzeigen. Diese Funktion steht für Dateien und Ordner zur Verfügung.

In Zwischenablage kopieren

Die Logmeldungen, wie oben beschrieben, in die Zwischenablage kopieren.

Logmeldungen durchsuchen...

Die Logmeldungen durchsuchen. Näheres dazu siehe oben.

Wenn Sie mehrere aufeinander folgende Revisionen (mittels der üblichen Strg- oder Umschalt-Taste) markieren, bietet das Kontextmenü eine Funktion an, alle Änderungen innerhalb des Revisionsbereiches rückgängig zu machen. Dies ist der einfachste Weg, einen Satz von Änderungen in einem Schritt zurückzunehmen.

Sie können, wie bereits oben beschrieben, die gewählten Revisionen auch in einer anderen Arbeitskopie zusammenführen.

Falls alle markierten Revisionen den selben Autor haben, können Sie den Autor dieser Revisionen in einem Schritt ändern.

Abbildung 4.22. Kontextmenü der Dateiliste des Log-Dialogs

Kontextmenü der Dateiliste des Log-Dialogs


Der untere Bereich des Log-Dialogs hat ein Kontextmenü, das Ihnen erlaubt

Änderungen anzeigen

Die Änderungen der markierten Datei in der gewählten Revision anzeigen.

Änderungen annotieren

Die markierte sowie die vorherige Revision der gewählten Datei annotieren und Ergebnisse mit einem Vergleichsprogramm darstellen. Lesen Sie „Unterschiede annotieren“ für weitere Informationen.

Zeige als Standard-Diff

Die Änderungen der markierten Datei als Standard-Diff anzeigen. Nur für Dateien verfügbar, die als Verändert gekennzeichnet sind.

Öffnen / Öffnen mit...

Die gewählte Datei entweder mit dem Standardprogramm für den Dateityp oder mit einem von Ihnen gewählten Programm öffnen.

Annotieren...

Öffnet den Annotieren-Dialog, mit dessen Hilfe Sie bis zur markierten Revision annotieren können.

Änderungen dieser Revision rückgängig machen

Die Änderungen der gewählten Datei in dieser Revision rückgängig machen.

Zeige Eigenschaften

Die Subversion-Eigenschaften für das ausgewählte Objekt anzeigen.

Zeige Log

Die Logmeldungen für die ausgewählte Datei anzeigen.

Logs vom Zusammenführen holen

Zeigt das Revisionslog inklusive zusammengeführten Änderungen für eine einzelne markierte Datei. Weiteres unter „Datenintegration protokollieren“.

Speichere Revision unter...

Die gewählte Revision speichern, sodass Sie eine ältere Version der Datei erhalten.

Exportieren...

Exportiert die gewählten Objekte in dieser Revision unter Beibehaltung der Dateihierarchie in einen Ordner.

Wenn mehrere Dateien im Log-Dialog markiert sind, ändert sich das Kontextmenü in:

Abbildung 4.23. Der untere Bereich im Log-Dialog mit angezeigtem Kontextmenü, wenn mehrere Dateien ausgewählt sind.

Der untere Bereich im Log-Dialog mit angezeigtem Kontextmenü, wenn mehrere Dateien ausgewählt sind.


Speichere Revision unter...

Die gewählte Revision speichern, sodass Sie eine ältere Version der Datei erhalten.

Mehrere Änderungen anzeigen...

Zeigt Änderungen für die gewählte Revision für die ausgewählten Dateien an. Beachten Sie, dass die 'Zeige Änderungen'-Funktion mehrfach ausgeführt wird und so mehrere Programminstanzen von dem Diff-Tool ihrer Wahl gestartet werden können oder einfach eine neue Diff-Registerkarte per Datei in Ihrem Tool aufmacht wird. Wenn Sie mehr als 15 Dateien ausgewählt haben, werden Sie aufgefordert, die Aktion zu bestätigen.

Öffne mehrere lokale...

Damit öffnen Sie lokale Dateien aus Ihrer Arbeitskopie mit den für diese Dateien registrierten Anwendungen. Das Verhalten entspricht dem bei einem Doppelklick auf die Datei(en) im Windows Explorer. Abhängig von den Eigenschaften der Anwendung, die für die Dateierweiterung registriert ist, kann die Aktion recht lange dauern. Schlimmstenfalls wird für jede gewählte Datei eine neue Instanz der Anwendung gestartet.

Wenn Sie beim Aufrufen dieser Befehl Strg halten, werden die Dateien immer in Visual Studio geladen. Dies funktioniert nur, wenn die folgenden Bedingungen erfüllt sind: Visual Studio muss im gleichen Benutzerkontext und mit der gleichen Prozess-Integritätsebene [als Admin ausführen oder nicht] wie TortoiseProc.exe. Es ist möglicherweise wünschenswert, das Projekt mit den geänderten Dateien geladen zu haben, obwohl dies nicht unbedingt erforderlich ist. Nur auf dem Datenträger vorhandene Dateien mit den Erweiterungen [cpp, h, cs, rc, resx, xaml, js, html, htm, asp, aspx, php, css und xml] werden geladen. Maximal 100 Dateien können gleichzeitig in Visual Studio geladen werden. Die Dateien werden immer als neue Karteireiter in der derzeit geöffneten Instanz von Visual Studio geladen. Der Vorteil einer Überprüfung von Codeänderungen in Visual Studio besteht darin, dass Sie die integrierten Werkzeuge Code-Navigation, Verweis finden und statische Codeanalyse verwenden können.

Exportieren...

Markierte Dateien/Ordner in der gewählten Revision exportieren. Im folgenden Dialog können Sie die URL und Revision überprüfen und ein Ziel für den Export festlegen.

Tipp

Sie werden bemerkt haben, dass wir manchmal von Änderungen und manchmal von Unterschieden sprechen. Worin liegt der Unterschied?

Subversion verwendet Revisionsnummern in zwei verschiedenen Zusammenhängen. Zum einen referenziert eine Revisionsnummer den Status eines Projektarchives zu einem gewissen Zeitpunkt. Zum anderen wird damit auch der Satz von Änderungen bezeichnet, der diese Revision erzeugt hat. Erledigt in Revision r1234 bedeutet z. B., dass Funktion X in Revision 1234 implementiert wurde. Um die Bedeutung klarer zu machen, verwenden wir zwei verschiedene Begriffe.

Wenn Sie zwei Revisionen N und M wählen, wird das Kontextmenü Ihnen die Unterschiede zwischen diesen Revisionen anbieten. In Subversion-Terminologie also diff -r M:N.

Wenn Sie eine einzelne Revision N wählen, wird das Kontextmenü Ihnen die Änderungen in dieser Revision anbieten. In Subversion-Terminologie also diff -r N-1:N oder diff -c N.

Der untere Bereich zeigt die in allen gewählten Revisionen veränderten Dateien, sodass über das Kontextmenü stets Änderungen angezeigt werden können.

Weitere Logmeldungen holen

Der Log-Dialog zeigt aus mehreren Gründen nicht immer alle Änderungen an, die jemals gemacht wurden:

  • Bei einem großen Projektarchiv können hunderte oder gar tausende von Änderungen gespeichert sein. Alle diese Änderungen auf einmal zu laden, kann sehr lange dauern. Normalerweise ist man auch nur an den letzten Meldungen interessiert. Standardmäßig werden beim ersten Aufruf des Log-Dialogs die letzten 100 Logmeldungen angezeigt. Dieser Wert kann im Einstellungsdialog geändert werden. TortoiseSVNEinstellungen („TortoiseSVN-Dialog, Seite 1“),

  • Wenn die Option Bei Kopien/Umbenennen anhalten gewählt ist, werden keine weiteren Logmeldungen mehr geholt, falls der Ordner / die Datei von einer anderen Stelle des Projektarchivs kopiert wurde. Dies ist insbesondere dann von Nutzen, wenn man Zweige oder Marken betrachtet und nur die Änderungen innerhalb des Zweiges sehen möchte.

    Normalerweise werden Sie diese Option nicht aktivieren. TortoiseSVN merkt sich die von Ihnen gewählte Einstellung.

    Wenn der Log-Dialog aus dem Zusammenführen-Dialog heraus aufgerufen wird, ist diese Option standardmäßig aktiviert. Der Grund dafür ist, dass beim Zusammenführen meistens Änderungen an Zweigen betrachtet werden. Es ist normalerweise nicht sinnvoll, über die Wurzel des Zweiges hinaus in die Vergangenheit zu gehen.

    Beachten Sie, dass Subversion das Umbenennen derzeit als aufeinanderfolgende Kopieren/Löschen-Aktionen implementiert, sodass die Log-Anzeige ebenfalls anhält, wenn ein Ordner / eine Datei umbenannt wurde, falls diese Option gewählt ist.

Wenn Sie mehr Logmeldungen sehen wollen, klicken Sie auf die Nächste 100-Schaltfläche, um weitere 100 Meldungen zu holen. Sie können dies so oft wie nötig wiederholen.

Daneben befindet sich eine Mehrfachschaltfläche, die sich den letzten gewählten Zustand merkt. Klicken Sie auf den Pfeil, um die anderen Möglichkeiten zu sehen.

Wählen Sie Zeige Bereich, wenn Sie einen bestimmten Revisionsbereich betrachten wollen. Ein Dialog wird dann die Anfangs- und Endrevision von Ihnen abfragen.

Wählen Sie Zeige Alle, wenn Sie alle Logmeldungen von HEAD zurück bis zur Revision 1 sehen möchten.

Drücken Sie die Taste F5, um die neueste Version zu aktualisieren, falls es Übertragungen gab, während der Log-Dialog geöffnet war.

Um den Log-Puffer zu aktualisieren, drücken Sie Strg+F5.

Aktuelle Revision der Arbeitskopie

Da der Log-Dialog Ihnen die Logmeldungen ab der HEAD-Revision zeigt, kann es vorkommen, dass Logmeldungen für Änderungen angezeigt werden, die sich noch nicht in Ihrer Arbeitskopie befinden. Um dies zu verdeutlichen, wird die Logmeldung, die der aktuellen Revision der Arbeitskopie entspricht, in Fettdruck hervorgehoben.

Wenn Sie das Log für einen Ordner anzeigen, entspricht die hervorgehobene Revision der höchsten innerhalb des Ordners gefundenen Revisionsnummer. Diese zu ermitteln, erfordert ein rekursives Durchsuchen der Unterordner. Dieser Vorgang läuft in einem separaten Prozess ab, um die Anzeige der Logmeldungen nicht zu verzögern. Aus diesem Grund erscheint die Hervorhebung der Ordnerrevision unter Umständen verzögert.

Datenintegration protokollieren

Subversion 1.5 und neuer speichern die in einem Zweig zusammengeführten Revisionen in einer Eigenschaft des Zweiges ab. Dies ermöglicht es, eine detaillierte Historie von bereits durchgeführten Integrationsschritten zu erhalten. Wenn Sie zum Beispiel eine neue Funktion in einem Zweig entwickeln und die fertige Entwicklung im Stamm zusammenführen, wird das Log für den Stamm nur eine Revision anzeigen, obwohl darin vielleicht 1000 Revisionen des Zweiges enthalten sind.

Abbildung 4.24. Der Log-Dialog mit bereits zusammengeführten Revisionen

Der Log-Dialog mit bereits zusammengeführten Revisionen

Wenn Sie im Detail sehen wollen, welche Revisionen als Teil einer Übertragung integriert wurden, aktivieren Sie die Option Versionen vom Zusammenführen einschließen. Damit werden die Logmeldungen erneut geholt und die Einträge aus den zusammengeführten Revisionen dazwischen sortiert. Zusammengeführte Revisionen werden in grau angezeigt, weil es sich um Änderungen an einem anderen Teil des Baumes handelt.

Datenintegration ist niemals einfach! Während Sie eine Funktion auf dem Zweig entwickeln, werden Sie dort sicher ab und zu Änderungen aus dem Stamm zusammenführen, um mit der Hauptentwicklung synchron zu bleiben. Deshalb wird die Historie des Zweiges eine weitere Ebene an Informationen über Datenintegration enthalten. Diese verschiedenen Ebenen werden durch unterschiedlich tiefe Einrückungen im Log-Dialog angezeigt.

Ändern der Logmeldung und des Autors

Revisionseigenschaften unterscheiden sich vollständig von den Subversion-Eigenschaften jedes Objekts. Revisionseigenschaften sind mit einer bestimmten Revisionsnummer des Projektarchivs verbundene beschreibende Objekte, zum Beispiel Logmeldung, Datum und Autor der Übertragung.

Manchmal ist es notwendig, eine Logmeldung nachträglich zu ändern. Sei es, weil die Meldung Rechtschreibfehler enthält oder weil Sie die Meldung mit mehr Informationen erweitern müssen oder aus anderen Gründen. Oder Sie müssen den Autor der Revision ändern, weil Sie vielleicht vergessen haben, eine Authentifizierung für Übertragungen auf dem Server einzurichten oder...

Subversion lässt Sie Revisionseigenschaften jederzeit ändern. Aber da solche Änderungen nicht wieder rückgängig gemacht werden können (diese Änderungen werden nicht aufgezeichnet), ist die Funktion standardmäßig deaktiviert. Um diese Funktion zu aktivieren, müssen Sie eine pre-revprop-change-Aktion für das Projektarchiv einrichten. Bitte lesen Sie dazu im Kapitel Hook Scripts des Subversion-Buchs nach, wie das gemacht wird. Lesen Sie auch „Serverseitige Aktionsskripte“, um mehr Informationen über das Einrichten von Aktionen auf einem Windows-PC zu erhalten.

Sobald Sie die gewünschten Aktionsskripte für das Projektarchiv eingerichtet haben, können Sie sowohl den Autor als auch die Logmeldung (oder jede andere Revisionseigenschaft) über das Kontextmenü der Revisionsliste nachträglich ändern. Die Logmeldung selbst kann auch über das Kontextmenü des Textfeldes geändert werden.

Warnung

Da die Revisionseigenschaften (z. B. svn:log für Logmeldungen) in Subversion nicht aufgezeichnet werden, überschreiben Änderungen den alten Wert für immer.

Wichtig

Da TortoiseSVN einen Puffer aller Log-Informationen beibehält, werden Änderungen an Autor und Logmeldungen nur in Ihrer lokalen Installation auftauchen. Andere TortoiseSVN-Anwender werden noch die auf Ihrem Rechner zwischengespeicherten (alten) Autoren und Logmeldungen sehen, bis sie den Log-Puffer aktualisieren. Siehe „Die Ansicht aktualisieren“.

Logmeldungen filtern

Mit Hilfe der Filter am oberen Rand des Log-Dialogs können Sie die Logmeldungen auf diejenigen einschränken, die Sie interessieren. Die Von und Bis ermöglichen es, die Ausgabe auf einen bestimmten Zeitraum zu reduzieren. Die Suchmaske filtert die Meldungen heraus, welche die angegebene Zeichenfolge beinhalten.

Klicken Sie auf das Suchsymbol, um auszuwählen, welche Werte Sie durchsuchen möchten und um die Suche mit regulären Ausdrücken zu aktivieren. Normalerweise benötigen Sie nur eine einfache Textsuche, aber wenn Sie komplexere Suchbegriffe formulieren wollen, können Sie reguläre Ausdrücke verwenden. Wenn Sie mit dem Mauszeiger über das Eingabefeld fahren, erscheint ein Hinweistext zur Textsuche und den regulären Ausdrücken. Der Filter vergleicht Ihren Suchtext mit den Logmeldungen und zeigt nur die Einträge an, die mit dem Suchtext übereinstimmen.

Die einfache Suche nach Teilzeichenfolgen funktioniert ähnlich wie eine Suchmaschine. Zu suchende Zeichenfolgen werden durch Leerzeichen getrennt und alle Zeichenfolgen müssen übereinstimmen. Sie können ein voranstellen, damit eine bestimmte Teilzeichenfolge nicht gefunden wird (inverse Suche für diesen Begriff). Wenn Sie ein ! voranstellen, wird der gesamte Ausdruck invertiert. Weiterhin können Sie ein + voranstellen, um anzugeben, dass eine Teilzeichenfolge eingeschlossen werden soll, auch wenn sie zuvor mit einem - ausgeschlossen wurde. Beachten Sie, dass die Reihenfolge der Einschließung/Ausschließung hier relevant ist. Anführungszeichen schließen eine Zeichenfolge ein, die Leerzeichen enthält. Wenn Sie ein Anführungszeichen suchen möchten, schreiben Sie zwei Anführungszeichen hintereinander. Beachten Sie, dass der umgekehrten Schrägstrich nicht als Sonderzeichen verwendet wird und keine besonderen Bedeutung bei der einfachen Suche hat. Einige Beispiele erleichtern das Verständnis:

Alice Bob -Eve

sucht nach Zeichenfolgen, die beides, Alice und Bob, aber nicht Eve enthalten.

Alice -Bob +Eve

sucht nach Zeichenfolgen, die Alice, aber nicht Bob enthalten oder die Eve enthalten.

-Fall +SonderFall

sucht nach Zeichenfolgen, die Fall nicht enthalten, aber dennoch Zeichenfolgen, die SonderFall enthalten.

! Alice Bob

sucht nach Zeichenfolgen, die Alice und Bob nicht enthalten.

! -Alice -Bob 

erinnern Sie De Morgan's Theorem? NICHT (nicht Alice und nicht Bob) reduziert sich zu (Alice oder Bob).

"Alice und Bob"

sucht explizit nach Alice und Bob.

""

sucht ein doppeltes Anführungszeichen im Text.

"Alice sagt ""Hallo"" zu Bob" 

sucht nach Alice sagt "Hallo" zu Bob.

Reguläre Ausdrücke zu erklären würde den Rahmen dieses Handbuchs sprengen, aber Sie finden eine Dokumentation und Anleitung auf http://www.regular-expressions.info/ .

Beachten Sie, dass diese Filter nur auf die bereits heruntergeladenen Meldungen wirken. Sie haben keinen Einfluss darauf, welche Meldungen aus dem Projektarchiv heruntergeladen werden.

Sie können auch die Pfade in der unteren Liste filtern, indem Sie die Option Zeige nur betroffene Pfade nutzen. Betroffene Pfade enthalten den Pfad, für den das Log angezeigt wurde. Wenn sie das Log für einen Ordner anzeigen, heißt dies alle Pfade innerhalb dieses Ordners oder darunter. Bei Dateien betrifft das nur die Datei selbst. Normalerweise zeigt der Log-Dialog alle in der Übertragung enthaltenen Pfade, allerdings in grau. Wenn die Option aktiviert ist, werden die übrigen Pfade ausgeblendet.

Manchmal erfordern es Ihre Arbeitsgewohnheiten, dass Logmeldungen ein bestimmtes Format haben. Dadurch ist unter Umständen der Text, der die Änderungen beschreibt, in der Zusammenfassung von TortoiseSVN nicht sichtbar. Die Eigenschaft tsvn:logsummary kann dazu verwendet werden, einen Teil der Logmeldung zu extrahieren und als Zusammenfassung anzuzeigen. In „TortoiseSVN-Projekteigenschaften“ wird beschrieben, wie die Eigenschaft benutzt wird.

Keine Log-Formatierung im Projektarchivbetrachter

Da die Formatierung vom Zugriff auf Subversion-Eigenschaften abhängt, sehen Sie die Ergebnisse nur in einer Arbeitskopie. Im Projektarchivbetrachter steht diese Funktion nicht zur Verfügung, weil das Holen der Eigenschaften von einem Server eine zeitintensive Operation ist.

Statistiken anzeigen

Die Statistiken-Schaltfläche zeigt ein Formular mit interessanten Informationen über die angezeigten Revisionen an. Es zeigt zum Beispiel, wie viele Autoren (Personen, die Übertragungen gemacht haben) am Werk waren, wie viele Übertragungen jeder von ihnen gemacht hat, wöchentlicher Projektfortschritt und vieles mehr. Endlich haben Sie die Möglichkeit, zu überprüfen, wer fleißig am Projekt mitarbeitet und wer hinterherhängt ;-)

Statistikseite

Diese Seite zeigt Ihnen sämtliche vorstellbaren Zahlen an. Insbesondere der Datumsbereich und die zugehörigen Revisionen sowie einige Min-/Max-/Mittelwerte.

Übertragungen per Autor

Abbildung 4.25. Übertragungen per Autor als Histogramm

Übertragungen per Autor als Histogramm


Dieser Graph zeigt, welche Autoren aktiv am Projekt gearbeitet haben, als einfaches Histogramm, überlagertes Histogramm oder Kuchendiagramm.

Abbildung 4.26. Übertragungen per Autor als Tortendiagramm

Übertragungen per Autor als Tortendiagramm


Wenn es einige wenige Hauptautoren und viele Autoren mit wenigen Beiträgen gibt, kann die Anzahl der kleinen Segmente den Graphen unleserlich machen. Der Schieber am unteren Rand erlaubt es Ihnen, einen Prozentwert der gesamten Übertragungen als Schwellwert festzulegen, unterhalb dessen die Autoren in der Gruppe Andere zusammengefasst werden.

Die Seite Übertragungen nach Datum

Abbildung 4.27. Das Diagramm Übertragungen nach Datum

Das Diagramm Übertragungen nach Datum


Diese Seite zeigt Ihnen eine Zusammenfassung der Projektaktivität in Hinblick auf Übertragungen und Autoren an. Damit können Sie auf einen Blick erkennen, wann und durch wen am Projekt gearbeitet wurde.

Sobald es mehrere Autoren gibt, werden Sie entsprechend viele Linien im Diagramm sehen. Es gibt zwei verschiedene Ansichten: normal, in der die Aktivität eines Autors relativ zur Grundlinie angezeigt wird und gestapelt, bei der die Aktivität eines Autors relativ zur vorherigen Linie angezeigt wird. Die zweite Option vermeidet sich kreuzende Linien, erschwert es aber auch, die Aktivität eines einzelnen Autors zu bewerten.

Standardmäßig wird Groß-/Kleinschreibung bei der Analyse berücksichtigt, sodass PeterEgan und PeteRegan als zwei verschiedene Autoren erkannt werden. In vielen Fällen werden Benutzernamen inkonsistent eingegeben. Deshalb können Sie den Vergleich mit Groß-/Kleinschreibung bei Autoren ignorieren entsprechend anpassen.

Beachten Sie, dass die Statistiken den gleichen Zeitraum wie der Log-Dialog abdecken. Wenn dieser nur eine Revision anzeigt, sagt die Statistik nicht viel aus.

Offline-Modus

Abbildung 4.28. Der Dialog zum Offline gehen

Der Dialog zum Offline gehen


Wenn der Server nicht erreichbar ist und Sie den Log-Puffer aktiviert haben, können Sie den Log-Dialog und den Revisionsgraphen auch offline benutzen. Dabei werden die Daten aus dem Puffer gelesen, sodass Sie wie gewohnt weiterarbeiten können. Allerdings ist es möglich, dass die angezeigten Informationen veraltet oder unvollständig sind.

Hier haben Sie drei Möglichkeiten:

Für diese Aktion offline

Beendet die aktuelle Operation im Offline-Modus, versucht aber, wieder auf das Projektarchiv zuzugreifen, wenn das nächste Mal Logdaten angefordert werden.

Permanent offline

Bleibt im Offline-Modus, bis eine Aktualisierung der Logdaten explizit angefordert wird. Siehe „Die Ansicht aktualisieren“.

Abbrechen

Wenn Sie die Operation wegen möglicherweise veralteter Logdaten nicht fortsetzen wollen, brechen Sie einfach ab.

Die Option Diese Einstellung immer verwenden verhindert, dass der Dialog wieder erscheint und verwendet stets die von Ihnen gewählte Aktion. Sie können die Vorgabe jederzeit über TortoiseSVNOptionen ändern.

Die Ansicht aktualisieren

Wenn Sie den Server auf neue Logmeldungen überprüfen wollen, können Sie die Sicht einfach per F5 aktualisieren. Falls Sie den Log-Puffer verwenden (standardmäßig aktiv), wird das Projektarchiv auf neue Meldungen abgefragt und nur diese werden geholt. Falls der Log-Puffer offline war, wird gleichzeitig versucht, ihn wieder online zu schalten.

Falls Sie den Log-Puffer verwenden und denken, dass sich der Inhalt oder der Autor einer Logmeldung geändert haben, können Sie Umschalt+F5 oder Strg+F5 benutzen, um die angezeigten Meldungen erneut vom Server zu holen. Beachten Sie, dass das nur die gerade angezeigten Meldungen betrifft und dass nicht der gesamte Puffer für das Projektarchiv ungültig wird.

TortoiseSVN homepage