[svnbook commit] r3356 - trunk/src/de/book

jmfelderhoff noreply at red-bean.com
Mon Dec 1 15:03:25 CST 2008


Author: jmfelderhoff
Date: Mon Dec  1 15:03:25 2008
New Revision: 3356

Log:
* trunk/src/de/book/ch04-branching-and-merging.xml
  - Ticket #162 (cf. http://www.svnbook.de/report/6).


Modified:
   trunk/src/de/book/ch04-branching-and-merging.xml

Modified: trunk/src/de/book/ch04-branching-and-merging.xml
==============================================================================
--- trunk/src/de/book/ch04-branching-and-merging.xml	(original)
+++ trunk/src/de/book/ch04-branching-and-merging.xml	Mon Dec  1 15:03:25 2008
@@ -3386,15 +3386,27 @@
 
     <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
     <sect2 id="svn.branchmerge.advanced.ancestry">
+<!--
       <title>Noticing or Ignoring Ancestry</title>
+-->
+      <title>Die Abstammung berücksichtigen oder ignorieren</title>
 
+<!--
       <para>When conversing with a Subversion developer, you might
         very likely hear reference to the term
         <firstterm>ancestry</firstterm>.  This word is used to
         describe the relationship between two objects in a
         repository: if they're related to each other, one
         object is said to be an ancestor of the other.</para>
+-->
+      <para>Wenn Sie sich mit einem Subversion-Entwickler unterhalten,
+	wird wahrscheinlich auch der Begriff
+	<firstterm>Abstammung</firstterm> erwähnt. Dieses Wort wird
+	verwendet, um die Beziehung zwischen zwei Objekten im
+	Repository zu beschreiben: Wenn sie in Beziehung zueinander
+	stehen, heißt es, dass ein Objekt vom anderen abstammt.</para>
 
+<!--
       <para>For example, suppose you commit revision 100, which
         includes a change to a file <filename>foo.c</filename>.
         Then <filename>foo.c at 99</filename> is an
@@ -3407,7 +3419,22 @@
         (they have the same path), but in fact are completely
         different objects in the repository.  They share no history
         or <quote>ancestry.</quote></para>
+-->
+      <para>Nehmen wir an, Sie übergeben Revision 100, die eine
+	Änderung an der Datei <filename>foo.c</filename> beinhaltet.
+	Dann ist  <filename>foo.c at 99</filename> ein
+	<quote>Vorfahre</quote> von <filename>foo.c at 100</filename>.
+	Wenn Sie dagegen in Revision 101 die Löschung von
+	<filename>foo.c</filename> übergeben und in Revision 102 eine
+	neue Datei mit demselben Namen hinzufügen, hat es zwar den
+	Anschein, dass <filename>foo.c at 99</filename> und
+	<filename>foo.c at 102</filename> in Beziehung zueinander stehen
+	(sie haben denselben Pfad), es handelt sich allerdings um
+	völlig unterschiedliche Objekte im Repository. Sie haben weder
+	eine gemeinsame Geschichte noch
+	<quote>Abstammung</quote>.</para>
 
+<!--
       <para>The reason for bringing this up is to point out an
         important difference between <command>svn diff</command> and
         <command>svn merge</command>.  The former command ignores
@@ -3420,12 +3447,27 @@
         it would notice that they're unrelated and first attempt to
         delete the old file, then add the new file;  the output would
         indicate a deletion followed by an add:</para>
+-->
+      <para>Wir erwähnen das, um auf einen wichtigen Unterschied
+	zwischen den Befehlen <command>svn diff</command> und
+	<command>svn merge</command> hinzuweisen. Der erstere Befehl
+	ignoriert die Abstammung, wohingegen letzterer diese beachtet.
+	Wenn Sie beispielsweise mit <command>svn diff</command> die
+	Revisionen 99 und 102 von <filename>foo.c</filename>
+	vergleichen, werden Sie zeilenbasierte Unterschiede sehen; der
+	Befehl <command>diff</command> vergleicht blind zwei Pfade.
+	Wenn Sie aber dieselben Objekte mit <command>svn
+	merge</command> vergleichen, wird es feststellen, dass sie
+	nicht in Beziehung stehen und versuchen, die alte Datei zu
+	löschen und dann die neue hinzuzufügen; die Ausgabe wird eine
+	Löschung gefolgt von einer Hinzufügung anzeigen:</para>
 
       <screen>
 D    foo.c
 A    foo.c
       </screen>
 
+<!--
       <para>Most merges involve comparing trees that are ancestrally
         related to one another; therefore, <command>svn
         merge</command> defaults to this behavior.  Occasionally,
@@ -3439,12 +3481,35 @@
         of the entire second tree!  In these situations, you'll want
         <command>svn merge</command> to do a path-based comparison
         only, ignoring any relations between files and directories.
-        Add the <option>--ignore-ancestry</option> option to your
+        Add the <option>- -ignore-ancestry</option> option to your
         <command>merge</command> command, and it will behave just
           like <command>svn diff</command>.  (And conversely, the
-        <option>--notice-ancestry</option> option will cause
+        <option>- -notice-ancestry</option> option will cause
         <command>svn diff</command> to behave like the
         <command>svn merge</command> command.)</para>
+-->
+      <para>Die meisten Zusammenführungen vergleichen Bäume, die von
+	der Abstammung  her miteinander in Beziehung stehen, deshalb
+	verhält sich <command>svn merge</command> auf diese Weise.
+	Gelegentlich möchten Sie jedoch mit dem
+	<command>merge</command>-Befehl zwei Bäume vergleichen, die
+	nicht miteinander in Beziehung stehen. Es kann z.B. sein, dass
+	Sie zwei Quelltext-Bäume importiert haben, die unterschiedliche
+	Lieferantenstände eines Software-Projektes repräsentieren
+	(siehe <xref linkend="svn.advanced.vendorbr"/>).  Falls Sie 
+        <command>svn merge</command> dazu aufforderten, die beiden Bäume
+	miteinander zu vergleichen, würden Sie sehen, dass der
+	vollständige erste Baum gelöscht und anschliessend der
+	vollständige zweite Baum hinzugefügt würde! In diesen
+	Situationen möchten Sie, dass <command>svn merge</command>
+	lediglich einen pfadbasierten Vergleich vornimmt und
+	Beziehungen zwischen Dateien und Verzeichnissen ausser Acht
+	lässt. Fügen Sie die Option <option>--ignore-ancestry</option>
+	dem <command>merge</command>-Befehl hinzu, und er wird sich
+	verhalten wie <command>svn diff</command>.  (Auf der anderen
+	Seite wird die Option <option>--notice-ancestry</option> den
+	Befehl <command>svn diff</command> dazu veranlassen, sich wie
+	<command>svn merge</command> zu verhalten.</para>
 
     </sect2>
 




More information about the svnbook-dev mailing list