Manuals

Wer hat welche Zeile geändert?

Manchmal möchten Sie nicht nur erfahren, welche Zeilen sich zwischen verschiedenen Revisionen geändert haben, sondern auch, wer genau für welche Zeile in einer Datei verantwortlich ist. Dazu gibt es den Befehl TortoiseSVNAnnotieren....

Dieser Befehl listet für jede Zeile einer Datei den Autor und die Revision der letzten Änderung dieser Zeile auf.

Annotieren für Dateien

Abbildung 4.61. Der Annotieren-Dialog

Der Annotieren-Dialog


Wenn Sie nur an den Änderungen in neueren Revisionen interessiert sind, können Sie die Revision festlegen, bei der das Annotieren beginnen soll. Wenn Sie jede Revision annotieren wollen, setzen Sie diesen Wert auf 1.

Standardmäßig wird die annotierte Datei in TortoiseBlame angezeigt, wobei die verschiedenen Revisionen hervorgehoben werden, um die Lesbarkeit zu erleichtern. Wenn Sie die annotierte Datei bearbeiten oder ausdrucken möchten, aktivieren Sie Betrachte Annotierungen im Texteditor.

Sie können festlegen, wie Änderungen an Zeilenumbrüchen und Leerzeichen behandelt werden sollen. Diese Optionen sind in „Zeilenende- und Leerzeichenoptionen“ beschrieben. Die Vorgabe ist, dass alle Zeilenende- und Leerzeichenänderungen als echte Änderungen behandelt werden. Wenn Sie solche Änderungen ignorieren und den Originalautor finden wollen, können Sie hier die entsprechende Option wählen.

Sie können sich, wenn gewünscht, auch die Informationen über zusammengeführte Revisionen anzeigen lassen. Diese Funktion benötigt wesentlich mehr Zeit, um die Daten vom Server abzurufen. Wenn Zeilen aus einer anderen Quelle integriert wurden, wird beim Annotieren die Revision angezeigt, in der die Änderung im Original vorgenommen wurde, sowie die Revision beim Zusammenführen in diese Datei.

Sobald Sie auf OK klicken, berechnet TortoiseSVN die Annotierungen für diese Datei. Sobald der Prozess abgeschlossen ist, wird das Ergebnis in eine temporäre Datei geschrieben und Sie können das Ergebnis betrachten.

Abbildung 4.62. TortoiseBlame

TortoiseBlame


TortoiseBlame, das zusammen mit TortoiseSVN installiert wird, macht eine solche Annotierung leichter lesbar. Wenn Sie mit dem Mauszeiger über eine Zeile in der linken Spalte fahren, werden alle Zeilen, die in derselben Revision geändert wurden, mit einer dunkleren Farbe dargestellt. Zeilen von anderen Revisionen, aber demselben Autor, werden mit einem helleren Hintergrund dargestellt. Die Einfärbung funktioniert eventuell nicht optimal, wenn Sie Ihren Monitor auf nur 256 Farben eingestellt haben.

Wenn Sie auf eine Zeile Linksklicken, werden alle Zeilen derselben Revision markiert und Zeilen von anderen Revisionen, aber demselben Autor, werden in einer anderen Farbe dargestellt. Diese Markierung bleibt bestehen, sodass Sie den Mauszeiger bewegen können, ohne die Einfärbung zu verlieren. Klicken Sie nochmals auf diese Revision, um die Markierung wieder aufzuheben.

Die Revisionskommentare (Logmeldungen) werden in einem Hinweistext angezeigt, wenn sich die Maus über der Informationsspalte befindet. Wenn Sie diese Logmeldung in die Zwischenablage kopieren wollen, benutzen Sie dazu das Kontextmenü, das bei einem Rechtsklick auf die Informationsspalte erscheint.

Sie können innerhalb der Annotierungen suchen, indem Sie BearbeitenSuchen... aufrufen. Diese Funktion erlaubt Ihnen, nach Revisionsnummern, Autoren und dem Inhalt der Datei selbst zu suchen. Logmeldungen werden nicht durchsucht. Für diese Funktion steht der Log-Dialog zur Verfügung.

Sie können auch mittels BearbeitenGehe zu Zeile... in eine bestimmte Zeile der Datei springen.

Wenn sich die Maus über den Informationsspalten im Annotieren-Fenster befindet, steht ein Kontextmenü zur Verfügung, das den Vergleich von Revisionen und die Untersuchung der Historie erleichtert, wobei die Revisionsnummer der Zeile unter der Maus als Referenz verwendet wird. KontextmenüVorherige Revision annotieren erzeugt eine Annotierung derselben Datei unter Verwendung der vorherigen Revisionsnummer als Obergrenze. Dies zeigt Ihnen den Zustand der Datei an, kurz bevor die Zeile, die Sie gerade betrachten, geändert wurde. KontextmenüZeige Änderungen startet das Vergleichsprogramm mit den Änderungen der Revision. KontextmenüZeige Log startet den Log-Dialog in der gewählten Revision.

Wenn Sie leichter erkennen möchten, wo die ältesten und die neuesten Änderungen sind, wählen Sie AnsichtFarbcodierung für Alter der Zeilen. Dann werden neue Zeilen in rot, ältere Zeilen in blau mit einem Farbgradienten hinterlegt. Die Standardfarben sind recht hell, können aber in den TortoiseBlame-Einstellungen geändert werden.

Wenn Sie die Änderungsverfolgung verwenden und die Zusatzinformation beim Annotieren angefordert haben, werden zusammengeführte Zeilen leicht unterschiedlich angezeigt. Wenn eine Zeile als Ergebnis des Zusammenführens mit einem anderen Pfad geändert wurde, zeigt TortoiseBlame die Revision und den Autor der letzten Änderung in der Originaldatei statt der Revision an, in der die Daten zusammengeführt wurden. Die entsprechenden Zeilen werden durch Kursivschrift hervorgehoben. Die Revision, in der die Änderungen zusammengeführt wurden, wird im Hinweistext angezeigt, sobald Sie mit der Maus über die Infospalten fahren. Wenn Sie nicht möchten, dass zusammengeführte Zeilen so angezeigt werden, deaktivieren Sie die Option Zusammenführen-Info einschließen, wenn Sie das Annotieren starten.

Wenn Sie die Pfade sehen wollen, die beim Zusammenführen beteiligt waren, wählen Sie AnsichtZusammengeführte Pfade. Dies zeigt den Pfad, in dem die Zeile zuletzt geändert wurde, mit Ausnahme von Änderungen, die sich aus einer Zusammenführung ergeben.

Die Revisionsnummer beim Annotieren repräsentiert die letzte Revision, bei der sich der Inhalt der Zeile geändert hat. Wenn die Datei als Kopie einer anderen Datei erstellt wurde, entspricht die Revision der letzten Änderung in der Originaldatei und nicht der Revision, in der die Datei kopiert wurde. Das gleiche Verhalten gilt auch für die Pfade, die beim Zusammenführen beteiligt waren. Der Pfad zeigt den Speicherort des Projektarchivs an, an dem die letzte Änderung an dieser Zeile vorgenommen wurde.

Die Einstellungen für TortoiseBlame können Sie überTortoiseSVNEinstellungen auf dem Karteireiter TortoiseBlame anpassen. Siehe „TortoiseBlame-Einstellungen“.

Unterschiede annotieren

Eine der Einschränkungen beim Annotieren ist, dass der Bericht nur die Datei in einer bestimmten Revision sowie die Personen anzeigt, die die letzten Änderungen an den Zeilen vorgenommen haben. Manchmal möchten Sie sehen, was genau durch wen geändert wurde. Dazu steht ein Kontextmenü zur Verfügung, mit dessen Hilfe Sie sich die Änderungen in einer bestimmten Revision anzeigen lassen können. Wenn Sie jedoch die Änderungen und die Annotierungen gleichzeitig sehen wollen, benötigen Sie eine Kombination dieser Berichte.

Der Log-Dialog bietet Ihnen mehrere Möglichkeiten dazu.

Revisionen annotieren

Selektieren sie im oberen Teil zwei Revisionen und wählen dann KontextmenüRevisionen annotieren. Dadurch wird die Annotierungsinformation für beide Revisionen geholt und anschließend das Vergleichsprogramm gestartet, um die zwei Annotierungen gegenüberzustellen.

Änderungen annotieren

Markieren Sie eine Revision in der oberen Liste und eine Datei aus der unteren Liste. Wählen Sie dann KontextmenüUnterschiede annotieren. Dies wird die Annotierungen für die gewählte sowie die vorherige Revision erstellen und im Vergleichsprogramm anzeigen.

Vergleiche und annotiere mit Arbeitskopie BASE

Zeigen Sie das Log für eine einzelne Datei an und markieren Sie in der oberen Liste eine einzelne Revision. Wählen Sie KontextmenüVergleiche und Annotiere mit Arbeitskopie BASE. Dies wird die Annotierungen für die gewählte Revision sowie für die BASE-Revision der Arbeitskopie erstellen und im Vergleichsprogramm anzeigen.

TortoiseSVN homepage