[svnbook] r4057 committed - Finish issue #137 ("1.7 change: svn diff now shows textual property...

svnbook at googlecode.com svnbook at googlecode.com
Thu Sep 1 12:53:08 CDT 2011


Revision: 4057
Author:   cmpilato at gmail.com
Date:     Thu Sep  1 10:52:03 2011
Log:      Finish issue #137 ("1.7 change: svn diff now shows textual  
property
changes in unidiff format, except for svn:mergeinfo properties").

* en/book/ch03-advanced-topics.xml
   (svn.advanced.props.workflow): Update sample output from 'svn diff',
     and massage wording about how properties are represented to include
     a mention of 'svn patch' and its utility here.

* en/book/ch09-reference.xml
   (svn.ref.svn.c.patch): New placeholder section.

http://code.google.com/p/svnbook/source/detail?r=4057

Modified:
  /trunk/en/book/ch03-advanced-topics.xml
  /trunk/en/book/ch09-reference.xml

=======================================
--- /trunk/en/book/ch03-advanced-topics.xml	Mon Aug 29 10:31:57 2011
+++ /trunk/en/book/ch03-advanced-topics.xml	Thu Sep  1 10:52:03 2011
@@ -1186,9 +1186,9 @@
  $ svn diff calc/button.c
  Property changes on: calc/button.c
  ___________________________________________________________________
-Name: copyright
-   + (c) 2006 Red-Bean Software
-
+Added: copyright
+## -0,0 +1 ##
++(c) 2006 Red-Bean Software
  $
  </screen>
        </informalexample>
@@ -1265,8 +1265,41 @@
          program will ignore property patches—as a rule, it
          ignores any noise it can't understand.  This does,
          unfortunately, mean that to fully apply a patch generated by
-        <command>svn diff</command>, any property modifications will
-        need to be applied by hand.</para>
+        <command>svn diff</command> using <command>patch</command>,
+        any property modifications will need to be applied by
+        hand.</para>
+
+      <para>Subversion 1.7 improves this situation in two ways.
+        First, its nonstandard display of property differences is at
+        least machine-readable—an improvement over the display
+        of properties in versions prior to 1.7.  But Subversion 1.7
+        also introduces the <command>svn patch</command> subcommand,
+        designed specifically to handle the additional information
+        which <command>svn diff</command>'s output can carry, applying
+        those changes to the Subversion working copy.  Of specific
+        relevance to our topic, property differences present in patch
+        files generated by <command>svn diff</command> in Subversion
+        1.7 or better can be automatically applied to a working copy
+        by the <command>svn patch</command> command.  For more
+        about <command>svn patch</command>, see
+        <xref linkend="svn.ref.svn.c.patch" />.</para>
+
+      <note>
+        <para>There's one exception to how property changes are
+          reported by <command>svn diff</command>: changes to
+          Subversion's special <literal>svn:mergeinfo</literal>
+          property—used to track information about merges which
+          have been performed in your repository—are described
+          in a more human-readable fashion.  This is quite helpful to
+          the humans who have to read those descriptions.  But it also
+          serves to cause patching programs (including <command>svn
+          patch</command>) to skip those change descriptions as noise.
+          This might sound like a bug, but it really isn't because
+          this property is intended to be managed solely by
+          the <command>svn merge</command> subcommand.  For more about
+          merge tracking, see <xref linkend="svn.branchmerge"
+          />.</para>
+      </note>

      </sect2>

=======================================
--- /trunk/en/book/ch09-reference.xml	Tue Aug 30 12:15:55 2011
+++ /trunk/en/book/ch09-reference.xml	Thu Sep  1 10:52:03 2011
@@ -3777,6 +3777,52 @@
  </screen>
            </informalexample>

+        </refsect1>
+      </refentry>
+
+      <!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -  
-->
+      <refentry id="svn.ref.svn.c.patch">
+
+        <indexterm>
+          <primary>svn</primary>
+          <secondary>subcommands</secondary>
+          <tertiary>patch</tertiary>
+        </indexterm>
+
+        <refnamediv>
+          <refname>svn patch</refname>
+          <refpurpose>Apply changes represented in a unidiff patch to
+            the working copy.</refpurpose>
+        </refnamediv>
+        <refsect1>
+          <title>Synopsis</title>
+          <para><literal>svn patch PATCHFILE [PATH]</literal></para>
+        </refsect1>
+        <refsect1>
+          <title>Description</title>
+
+          <para>### TODO ###</para>
+        </refsect1>
+
+        <refsect1>
+          <title>Options</title>
+
+          <informalexample>
+            <screen>
+--dry-run
+--ignore-whitespace
+--quiet (-q)
+--reverse-diff
+--strip ARG
+</screen>
+          </informalexample>
+        </refsect1>
+
+        <refsect1>
+          <title>Examples</title>
+
+          <para>### TODO ###</para>
+
          </refsect1>
        </refentry>





More information about the svnbook-dev mailing list