[svnbook commit] r3490 - * trunk/src/de/book/ch07-customizing-svn.xml
codesite-noreply at google.com
codesite-noreply at google.com
Fri Apr 17 15:34:22 CDT 2009
Author: jmfelderhoff at gmx.eu
Date: Fri Apr 17 12:50:24 2009
New Revision: 3490
Modified:
trunk/src/de/book/ch07-customizing-svn.xml
Log:
* trunk/src/de/book/ch07-customizing-svn.xml
- Fixes ticket #241 (cf. http://www.svnbook.de/report/6).
Modified: trunk/src/de/book/ch07-customizing-svn.xml
==============================================================================
--- trunk/src/de/book/ch07-customizing-svn.xml (original)
+++ trunk/src/de/book/ch07-customizing-svn.xml Fri Apr 17 12:50:24 2009
@@ -2000,8 +2000,12 @@
<!-- =================================================================
-->
<!-- =================================================================
-->
<sect1 id="svn.advanced.externaldifftools">
+<!--
<title>Using External Differencing and Merge Tools</title>
+-->
+ <title>Verwenden externer Vergleichs- und
Zusammenführungsprogramme</title>
+<!--
<para>The interface between Subversion and external two- and three-way
differencing tools harkens back to a time when Subversion's only
contextual differencing capabilities were built around
@@ -2011,8 +2015,8 @@
utilities with more than a handful of options and parameters,
most of which were quite specific to the utilities. Some time
later, Subversion grew its own internal differencing library,
- and as a failover mechanism, the <option>--diff-cmd</option> and
- <option>--diff3-cmd</option> options were added to the
+ and as a failover mechanism, the <option>- -diff-cmd</option> and
+ <option>- -diff3-cmd</option> options were added to the
Subversion command-line client so that users could more easily
indicate that they preferred to use the GNU diff and diff3
utilities instead of the newfangled internal diff library. If
@@ -2020,7 +2024,29 @@
internal diff library, and fall back to running those external
programs, lengthy argument lists and all. And that's where
things remain today.</para>
+-->
+ <para>Die Schnittstelle zwischen Subversion und externen Zwei- und
+ Dreiwege-Vergleichsprogrammen geht zurück bis in eine Zeit, als
+ sich die kontextabhängigen Vergleichsfähigkeiten von Subversion
+ allein auf Aufrufe der GNU-diffutils-Werkzeuge stützten,
+ insbesonders <command>diff</command> und
+ <command>diff3</command>. Um das von Subversion benötigte
+ Verhalten zu bekommen, wurden diese Werkzeuge mit mehr als einer
+ handvoll Optionen und Parametern aufgerufen, von denen die
+ meisten sehr werkzeugspezifisch waren. Einige Zeit später
+ entwickelte Subversion seine eigene interne
+ Vergleichsbibliothek, und als Ausfallsicherung wurden dem
+ Subversion-Kommandozeilen-Client die Optionen
+ <option>--diff-cmd</option> und <option>--diff3-cmd</option>
+ hinzugefügt, so dass Benutzer auf einfache Art mitteilen
+ konnten, dass sie die GNU-Werkzeuge diff and diff3 gegenüber der
+ neumodischen internen Vergleichsbibliothek bevorzugen. Wenn
+ diese Optionen verwendet wurden, ignorierte Subversion einfach
+ die interne Vergleichsbibliothek und benutzte die externen
+ Programmen mit den langen Argumentlisten und dem ganzen
+ Drumherum. Uns so ist es noch heute.</para>
+<!--
<para>It didn't take long for folks to realize that having such
easy configuration mechanisms for specifying that Subversion
should use the external GNU diff and diff3 utilities located at
@@ -2034,7 +2060,23 @@
options at your external diff tool regardless of whether
that program can understand those options. And that's where
things get unintuitive for most users.</para>
+-->
+ <para>Es dauerte nicht lange, bis einige Leute feststellten, das
+ diese einfachen Konfigurationsmechanismen zur Festlegung der
+ Benutzung der externen GNU-Werkzeuge diff und diff3, die an
+ einem bestimmten Ort im System liegen, auch für andere
+ Vergleichswerkzeuge verwendet werden können. Schließlich hat
+ Subversion nicht überprüft, ob die Werkzeuge zur Werkzeugkette
+ der GNU diffutils gehören. Der einzige konfigurierbare Aspekt
+ bei der Verwendung dieser externen Werkzeuge ist allerdings der
+ Speicherort im System – weder die Menge der Optionen noch
+ die Reihenfolge der Parameter usw. Subversion übergibt all diese
+ GNU-Werkzeug-Optionen an Ihr externes Vergleichswerkzeug, ohne
+ zu berücksichtigen, ob das Programm sie überhaupt versteht. Und
+ hier hört es für die meisten Benutzer auf, intuitiv zu
+ sein.</para>
+<!--
<para>The key to using external two- and three-way differencing tools
(other than GNU diff and diff3, of course) with Subversion is to
use wrapper scripts, which convert the input from Subversion into
@@ -2043,8 +2085,19 @@
Subversion expects—the format that the GNU tools would
have used. The following sections cover the specifics of those
expectations.</para>
+-->
+ <para>Der Schlüssel zur Benutzung externer Zwei- und
+ Dreiwege-Vergleichsprogramme (natürlich anderer als GNU diff und
+ diff3) mit Subversion besteht darin, die Werkzeuge in Skripte
+ <quote>einzupacken</quote>, die die Eingaben von Subversion in
+ etwas umwandeln, das Ihr Werkzeug versteht, und dann die Ausgabe
+ Ihres Werkzeugs in ein von Subversion erwartetes Format
+ umzuwandeln – das Format, das die GNU-Werkzeuge verwendet
+ hätten. Die folgenden Abschnitte behandeln die Besonderheiten
+ dieser Erwartungen.</para>
<note>
+<!--
<para>The decision on when to fire off a contextual two- or three-way
diff as part of a larger Subversion operation is made entirely
by Subversion and is affected by, among other things, whether
@@ -2058,8 +2111,24 @@
<literal>application/msword</literal>). For more about MIME
type settings, see <xref
linkend="svn.advanced.props.special.mime-type"/></para>
+-->
+ <para>Die Entscheidung, wann ein kontextabhängiges Zwei- oder
+ Dreiwege-Vergleichsprogramm als Teil einer größeren Operation
+ von Subversion gestartet wird, obliegt allein Subversion und
+ wird unter anderem dadurch beeinflusst, ob die Dateien nach
+ Maßgabe des Propertys <literal>svn:mime-type</literal>
+ menschenlesbar sind. Das bedeutet beispielsweise, selbst falls
+ Sie über das raffinierteste Vergleichs- oder
+ Zusammenführungsprogramm des Universums verfügten, welches
+ Microsoft Word versteht, würde es niemals von Subversion
+ aufgerufen, solange Ihre versionierten Word-Dokumente einen
+ MIME-Typen hätten, der sie als nicht-menschenlesbar
+ kennzeichnet (so wie <literal>application/msword</literal>).
+ Mehr über MIME-Type-Einstellungen unter <xref
+ linkend="svn.advanced.props.special.mime-type"/></para>
</note>
+<!--
<para>Subversion 1.5 introduces interactive resolution of
conflicts (described in <xref linkend="svn.tour.cycle.resolve"
/>), and one of the options provided to users is the ability to
@@ -2078,6 +2147,29 @@
(which contains upstream changes), the <quote>mine</quote> file
(which contains local modifications), and the path of the file
where the final resolved contents should be stored.</para>
+-->
+ <para>Subversion 1.5 führt die interaktive Auflösung von
+ Konflikten ein (in <xref linkend="svn.tour.cycle.resolve" />
+ beschrieben), und eine der den Benutzern angebotene Option ist
+ die Fähigkeit, ein Zusammenführungsprogramm eines Drittanbieters
+ zu starten. Wenn dieses Vorgehen gewählt wird, ermittelt
+ Subversion über die Laufzeitoption
+ <literal>merge-tool-cmd</literal> den Namen eines externen
+ Zusammenführungsprogramms und startet dies mit den
+ entsprechenden Eingabedateien, sofern eins gefunden wird. Dies
+ ist in vielerlei Hinsicht ein Unterschied zum konfigurierbaren
+ Dreiwege-Vergleichsprogramm. Erstens wird das Vergleichsprogramm
+ stets verwendet, um Dreiwege-Vergleiche vorzunehmen, wohingegen
+ das Zusammenführungsprogramm nur dann angewendet wird, falls das
+ Dreiwege-Vergleichsprogramm einen Konflikt entdeckt hat.
+ Zweitens ist die Schnittstelle sehr viel sauberer – Ihr
+ konfiguriertes Zusammenführungsprogramm braucht nur vier
+ Pfadangaben als Kommandozeilenparameter zu akzeptieren: die
+ Basisdatei, die <quote>fremde</quote> Datei (die die Änderungen
+ aus dem Repository enthält), die <quote>eigene</quote> Datei
+ (die lokale Änderungen enthält) und den Pfad der Datei, in der
+ der endgültige Inhalt nach Konfliktauflösung gespeichert werden
+ soll.</para>
<!-- ===============================================================
-->
<sect2 id="svn.advanced.externaldifftools.diff">
More information about the svnbook-dev
mailing list