Kapitel 1. Einleitung

Wenn mehrere Personen an einer Datei arbeiten und immer wieder untereinander austauschen, dann ist es schwierig zu erkennen, welche Änderungen an einer neuen Version der Datei oder der Kopie gemacht wurden. Die neue Kopie und das Original nebeneinander im Editorprogramm zu vergleichen, ist eine Lösung, aber arbeitsaufwendig, zeitaufwendig und fehleranfällig. Dafür ist ein Programm zur Anzeige von Abweichungen - sogenannter Diffs - besser geeignet.

Natürlich ist der naheliegende Name für ein solches Programm diff. Zufällig ist das Programm diff auch auf den meisten Linux®-basierten Systemen installiert und wird genau für diesen Zweck verwendet. Entwickler verwenden diff als Werkzeug in einer Konsole, um Unterschiede zwischen verschiedenen Versionen einer Quelltextdatei aufzuzeigen. Dennoch ist diff nicht nur für die Anzeige von Unterschieden zwischen Quelltextdateien geeignet, es kann für viele andere Textdateien verwendet werden.

Arbeiten mit dem Programm diff auf der Befehlszeile erfordert die Kenntnis aller Optionen für diesen Befehl. Die Ausgabe des Programms ist für Anwender schwierig zu lesen und zu verstehen. Diese Aufgabe wird durch das Programm Kompare erleichtert. Es bietet eine grafische Oberfläche für das Programm diff und zeigt die Quell- und Zieldatei nebeneinander an, die Abweichungen werden dabei automatisch hervorgehoben. Nun können die Änderungen aus einer Datei nacheinander an der anderen Datei angewendet werden. Nicht alle Änderungen müssen angewendet werden, wenn Sie eine Änderung anwenden, kann diese jederzeit ' zurückgesetzt' werden. Wenn alle benötigten Änderungen angewendet wurden, kann das Ergebnis gespeichert werden. Im Editor mit dem die Datei erstellt wurde, wird sie wie jede beliebige Datei angezeigt.

Zusätzlich zu der Anzeige von Abweichungen zwischen Quell- und Zieldateien kann Kompare dazu benutzt werden, eine spezielle Datei zu erstellen, die 'diff' genannt wird. Diese Datei enthält alle Abweichungen zwischen zwei Quelldateien und kann benutzt werden, um Änderungen anzusehen und an einer anderen Kopie der Datei anzuwenden. Wenn zum Beispiel zwei Personen am gleichen Dokument arbeiten und die erste Person möchte Änderungen durchführen und nur diese Änderungen an die zweite Person senden. Normalerweise würde die erste Person die komplette veränderte Datei an die zweite Person senden, welche dann beide Dateien nebeneinander vergleichen müsste. Dieser Prozess entspricht der in den vorherigen Abschnitten erklärten Arbeitsweise. Mit Kompare würde die erste Person zunächst eine lokale Kopie der zu verändernden Datei anlegen, dann Änderungen durchführen und dann das Original mit der veränderten Datei vergleichen. Mit Kompare kann eine diff-Datei angelegt werden, die nur die Änderungen enthält. Diese kann dann der zweiten Person anstelle der kompletten Datei geschickt werden.

Mithilfe von Kompare kann nun die zweite Person die diff-Datei ansehen, mit der lokalen Kopie des Dokuments vergleichen und die Änderungen der ersten Person anwenden. Und so kann der Prozess für viele Versionen des Dokuments weitergehen, jede Person macht Änderungen, verteilt sie und wendet sie an. Dieser Prozess ist weitläufig Patchen genannt, ein Begriff benannt nach dem Programm patch, ein weiteres Befehlszeilenprogramm zur Verarbeitung von diff-Dateien.

Manchmal wird eine Datei durch mehrere Personen gleichzeitig bearbeitet. Dann kann es auch vorkommen, dass Änderungen in der gleichen Zeile in der Datei erfolgt sind. Würden jetzt die Diff-Dateien angewendet, könnten die Änderungen gegenseitig überschrieben werden. Glücklicherweise haben die Entwickler diese Situation bei der Entwicklung dieser Programme bedacht, es ist in diesem Fall nicht möglich, diese Änderungen ohne manuelle Bearbeitung durchzuführen. Dieses Problem wird als Konflikt bezeichnet. In Kompare werden diese Konflikte angezeigt. Dann können Sie sie manuell lösen können, indem Sie entscheiden, welche Änderungen an welcher Datei durchgeführt werden sollen.

Kompare kann zusätzlich auch Ordner vergleichen. In diesem Fall werden rekursiv alle Unterordner und deren Dateien auf Abweichungen untersucht. Dann werden alle Dateien mit Abweichungen automatisch geöffnet und von Kompare aufgelistet, damit wird das Navigieren in den verschiedenen Dateien erleichtert.