[svnbook] r3790 committed - * src/en/book/ch03-advanced-topics.xml...

svnbook at googlecode.com svnbook at googlecode.com
Fri Oct 8 15:04:58 CDT 2010


Revision: 3790
Author: cmpilato at gmail.com
Date: Fri Oct  8 13:04:41 2010
Log: * src/en/book/ch03-advanced-topics.xml
* src/en/book/ch01-fundamental-concepts.xml
* src/en/book/ch00-preface.xml
   Mostly index entry additions.  Some minor wording and formatting changes.

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

Modified:
  /trunk/src/en/book/ch00-preface.xml
  /trunk/src/en/book/ch01-fundamental-concepts.xml
  /trunk/src/en/book/ch03-advanced-topics.xml

=======================================
--- /trunk/src/en/book/ch00-preface.xml	Fri Oct  8 11:48:33 2010
+++ /trunk/src/en/book/ch00-preface.xml	Fri Oct  8 13:04:41 2010
@@ -58,7 +58,13 @@

      <title>What Is Subversion?</title>

-    <para>Subversion is a free/open source version control system.
+    <para>
+      <indexterm>
+        <primary>Subversion</primary>
+        <secondary>defined</secondary>
+      </indexterm>
+
+      Subversion is a free/open source version control system.
        That is, Subversion manages files and directories, and the
        changes made to them, over time.  This allows you to recover
        older versions of your data or examine the history of how your
@@ -233,7 +239,13 @@

        <title>Subversion's Architecture</title>

-      <para><xref linkend="svn.intro.architecture.dia-1"/> illustrates
+      <para>
+        <indexterm>
+          <primary>Subversion</primary>
+          <secondary>architecture</secondary>
+        </indexterm>
+
+        <xref linkend="svn.intro.architecture.dia-1"/> illustrates
          a <quote>mile-high</quote> view of Subversion's
          design.</para>

@@ -259,7 +271,13 @@

        <title>Subversion's Components</title>

-      <para>Subversion, once installed, has a number of different
+      <para>
+        <indexterm>
+          <primary>Subversion</primary>
+          <secondary>components</secondary>
+        </indexterm>
+
+        Subversion, once installed, has a number of different
          pieces.  The following is a quick overview of what you get.
          Don't be alarmed if the brief descriptions leave you scratching
          your head—<emphasis>plenty</emphasis> more pages
@@ -339,16 +357,22 @@

        <title>What's New in Subversion</title>

-      <para>The first edition of this book was released in 2004,
-        shortly after Subversion had reached 1.0.  Over the following
-        four years Subversion released five major new versions, fixing
-        bugs and adding major new features.  While we've managed to
-        keep the online version of this book up to date, we're
-        thrilled that the second edition from O'Reilly now covers
-        Subversion up through release 1.5, a major milestone for the
-        project.  Here's a quick summary of major new changes since
-        Subversion 1.0.  Note that this is not a complete list; for
-        full details, please visit Subversion's web site at
+      <para>
+        <indexterm>
+          <primary>Subversion</primary>
+          <secondary>history of</secondary>
+        </indexterm>
+
+        The first edition of this book was released in 2004, shortly
+        after Subversion had reached 1.0.  Over the following four
+        years Subversion released five major new versions, fixing bugs
+        and adding major new features.  While we've managed to keep
+        the online version of this book up to date, we're thrilled
+        that the second edition from O'Reilly now covers Subversion up
+        through release 1.5, a major milestone for the project.
+        Here's a quick summary of major new changes since Subversion
+        1.0.  Note that this is not a complete list; for full details,
+        please visit Subversion's web site at
          <ulink url="http://subversion.apache.org"/>.</para>

        <variablelist>
=======================================
--- /trunk/src/en/book/ch01-fundamental-concepts.xml	Mon Sep 13 11:14:24  
2010
+++ /trunk/src/en/book/ch01-fundamental-concepts.xml	Fri Oct  8 13:04:41  
2010
@@ -20,7 +20,13 @@
    <sect1 id="svn.basic.repository">
      <title>The Repository</title>

-    <para>Subversion is a centralized system for sharing information.
+    <para>
+      <indexterm>
+        <primary>repository</primary>
+        <secondary>defined</secondary>
+      </indexterm>
+
+      Subversion is a centralized system for sharing information.
        At its core is a repository, which is a central store of data.
        The repository stores information in the form of a
        <firstterm>filesystem tree</firstterm>—a typical hierarchy
@@ -36,7 +42,7 @@
        <graphic fileref="images/ch02dia1.png"/>
      </figure>

-    <para>So why is this interesting?  So far, this sounds like the
+    <para>Why is this interesting?  So far, this sounds like the
        definition of a typical file server.  And indeed, the repository
        <emphasis>is</emphasis> a kind of file server, but it's not your
        usual breed.  What makes the Subversion repository special is
@@ -65,11 +71,19 @@
    <sect1 id="svn.basic.vsn-models">
      <title>Versioning Models</title>

-    <para>The core mission of a version control system is to enable
-      collaborative editing and sharing of data.  But different
-      systems use different strategies to achieve this.  It's
-      important to understand these different strategies, for a couple
-      of reasons.  First, it will help you compare and contrast
+    <para>
+      <indexterm>
+        <primary>version control</primary>
+        <secondary>defined</secondary>
+      </indexterm>
+
+      If the primary mission of a version control system is to track
+      the various versions of digital information over time, a very
+      close secondary mission in any modern version control system is
+      to enable collaborative editing and sharing of that data.  But
+      different systems use different strategies to achieve this.
+      It's important to understand these different strategies, for a
+      couple of reasons.  First, it will help you compare and contrast
        existing version control systems, in case you encounter other
        systems similar to Subversion.  Beyond that, it will also help
        you make more effective use of Subversion, since Subversion
@@ -113,7 +127,14 @@
      <sect2 id="svn.basic.vsn-models.lock-unlock">
        <title>The Lock-Modify-Unlock Solution</title>

-      <para>Many version control systems use a
+      <para>
+        <indexterm>
+          <primary>version control</primary>
+          <secondary>models</secondary>
+          <tertiary>lock-modify-unlock</tertiary>
+        </indexterm>
+
+        Many version control systems use a
          <firstterm>lock-modify-unlock</firstterm> model to address the
          problem of many authors clobbering each other's work.  In this
          model, the repository allows only one person to change a file
@@ -187,7 +208,14 @@
      <sect2 id="svn.basic.vsn-models.copy-merge">
        <title>The Copy-Modify-Merge Solution</title>

-      <para>Subversion, CVS, and many other version control systems
+      <para>
+        <indexterm>
+          <primary>version control</primary>
+          <secondary>models</secondary>
+          <tertiary>copy-modify-merge</tertiary>
+        </indexterm>
+
+        Subversion, CVS, and many other version control systems
          use a <firstterm>copy-modify-merge</firstterm> model as an
          alternative to locking.  In this model, each user's client
          contacts the project repository and creates a personal
@@ -287,7 +315,6 @@

    </sect1>

-  <!-- How svn implements the philosophy -->
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
    <!-- =================================================================  
-->
@@ -302,11 +329,22 @@
      <sect2 id="svn.advanced.reposurls">
        <title>Subversion Repository URLs</title>

-      <para>Throughout this book, Subversion uses URLs to identify
-        versioned files and directories in Subversion repositories.
-        For the most part, these URLs use the standard syntax,
-        allowing for server names and port numbers to be specified as
-        part of the URL:</para>
+      <para>
+        <indexterm>
+          <primary>svn</primary>
+          <secondary>syntax</secondary>
+          <tertiary>URLs</tertiary>
+        </indexterm>
+        <indexterm>
+          <primary>svnsync</primary>
+          <secondary>syntax</secondary>
+          <tertiary>URLs</tertiary>
+        </indexterm>
+
+        Subversion uses URLs to identify versioned files and
+        directories in Subversion repositories.  For the most part,
+        these URLs use the standard syntax, allowing for server names
+        and port numbers to be specified as part of the URL:</para>

        <screen>
  $ svn checkout http://svn.example.com:9834/repos
@@ -385,18 +423,17 @@
          notation was introduced as a shorthand for <quote>the URL of
          the repository's root directory</quote>.  For example:</para>

-        <screen>
+      <screen>
  $ svn list ^/tags/bigsandwich/
  </screen>

-        <para>In this example, we're specifying a URL for
+      <para>In this example, we're specifying a URL for
          the <filename>/tags/bigsandwich</filename> directory in the
          root of the repository.  Note that this URL syntax works only
          when your current working directory is a working
          copy—the commandline client knows the repository's root
          URL by looking at the working copy's metadata.</para>

-
        <sidebar id="svn.basic.in-action.wc.sb-1">
          <title>Repository URLs</title>

@@ -448,10 +485,10 @@
          </table>

          <para>For more information on how Subversion parses URLs, see
-        <xref linkend="svn.advanced.reposurls"/>.  For more
-        information on the different types of network servers
-        available for Subversion, see
-        <xref linkend="svn.serverconfig"/>.</para>
+          <xref linkend="svn.advanced.reposurls"/>.  For more
+          information on the different types of network servers
+          available for Subversion, see
+          <xref linkend="svn.serverconfig"/>.</para>

        </sidebar>

@@ -465,7 +502,13 @@
          demonstrate how the Subversion client creates and uses
          them.</para>

-      <para>A Subversion working copy is an ordinary directory tree on
+      <para>
+        <indexterm>
+          <primary>working copy</primary>
+          <secondary>defined</secondary>
+        </indexterm>
+
+        A Subversion working copy is an ordinary directory tree on
          your local system, containing a collection of files.  You can
          edit these files however you wish, and if they're source code
          files, you can compile your program from them in the usual
@@ -511,11 +554,26 @@
          <graphic fileref="images/ch02dia6.png"/>
        </figure>

-      <para>To get a working copy, you must <firstterm>check
+      <para>
+        <indexterm>
+          <primary>svn</primary>
+          <secondary>subcommand</secondary>
+          <tertiary>checkout</tertiary>
+        </indexterm>
+        <indexterm>
+          <primary>working copy</primary>
+          <secondary>creation</secondary>
+        </indexterm>
+        <indexterm>
+          <primary>checkout</primary>
+          <see>working copy, creation</see>
+        </indexterm>
+
+        To get a working copy, you must <firstterm>check
          out</firstterm> some subtree of the repository.  (The term
          <emphasis>check out</emphasis> may sound like it has something to  
do
          with locking or reserving resources, but it doesn't; it simply
-        creates a private copy of the project for you.) For example,
+        creates a private copy of the project for you.)  For example,
          if you check out <filename>/calc</filename>, you will get a
          working copy like this:</para>

@@ -525,9 +583,9 @@
  A    calc/integer.c
  A    calc/button.c
  Checked out revision 56.
-
  $ ls -A calc
  Makefile  button.c integer.c .svn/
+$
  </screen>

        <para>The list of letter <literal>A</literal>s in the left
@@ -547,7 +605,22 @@
          <firstterm>committing</firstterm> (or <firstterm>checking
          in</firstterm>) changes to the repository.</para>

-      <para>To publish your changes to others, you can use
+      <para>
+        <indexterm>
+          <primary>svn</primary>
+          <secondary>subcommand</secondary>
+          <tertiary>commit</tertiary>
+        </indexterm>
+        <indexterm>
+          <primary>committing</primary>
+          <see>working copy, commit</see>
+        </indexterm>
+        <indexterm>
+          <primary>working copy</primary>
+          <secondary>commit</secondary>
+        </indexterm>
+
+        To publish your changes to others, you can use
          Subversion's <command>svn commit</command> command:</para>

        <screen>
@@ -555,6 +628,7 @@
  Sending        button.c
  Transmitting file data .
  Committed revision 57.
+$
  </screen>

        <para>Now your changes to <filename>button.c</filename> have
@@ -571,7 +645,22 @@
          unchanged; Subversion modifies working copies only at the
          user's request.</para>

-      <para>To bring her project up to date, Sally can ask Subversion
+      <para>
+        <indexterm>
+          <primary>svn</primary>
+          <secondary>subcommand</secondary>
+          <tertiary>update</tertiary>
+        </indexterm>
+        <indexterm>
+          <primary>updating</primary>
+          <see>working copy, update</see>
+        </indexterm>
+        <indexterm>
+          <primary>working copy</primary>
+          <secondary>update</secondary>
+        </indexterm>
+
+        To bring her project up to date, Sally can ask Subversion
          to <firstterm>update</firstterm> her working copy, by using
          the <command>svn update</command> command.  This will incorporate
          your changes into her working copy, as well as any others that
@@ -604,7 +693,13 @@
      <sect2 id="svn.basic.in-action.revs">
        <title>Revisions</title>

-      <para>An <command>svn commit</command> operation publishes
+      <para>
+        <indexterm>
+          <primary>revisions</primary>
+          <secondary>defined</secondary>
+        </indexterm>
+
+        An <command>svn commit</command> operation publishes
          changes to any number of files and directories as a single
          atomic transaction.  In your working copy, you can change
          files' contents; create, delete, rename, and copy files and
@@ -640,10 +735,16 @@
        <sidebar>
          <title>Global Revision Numbers</title>

-        <para>Unlike most version control systems, Subversion's
-          revision numbers apply to <emphasis>entire trees</emphasis>,
-          not individual files.  Each revision number selects an
-          entire tree, a particular state of the repository after some
+        <para>
+          <indexterm>
+            <primary>revisions</primary>
+            <secondary>global</secondary>
+          </indexterm>
+
+          Unlike most version control systems, Subversion's revision
+          numbers apply to <emphasis>entire trees</emphasis>, not
+          individual files.  Each revision number selects an entire
+          tree, a particular state of the repository after some
            committed change.  Another way to think about it is that
            revision N represents the state of the repository filesystem
            after the Nth commit.  When Subversion users talk
@@ -658,7 +759,13 @@
            details.)</para>
        </sidebar>

-      <para>It's important to note that working copies do not always
+      <para>
+        <indexterm>
+          <primary>working copy</primary>
+          <secondary>mixed-revision</secondary>
+        </indexterm>
+
+        It's important to note that working copies do not always
          correspond to any single revision in the repository; they may
          contain files from several different revisions.  For example,
          suppose you check out a working copy from a repository whose
@@ -806,7 +913,13 @@
      <sect2 id="svn.basic.in-action.mixedrevs">
        <title>Mixed Revision Working Copies</title>

-      <para>As a general principle, Subversion tries to be as flexible
+      <para>
+        <indexterm>
+          <primary>working copy</primary>
+          <secondary>mixed-revision</secondary>
+        </indexterm>
+
+        As a general principle, Subversion tries to be as flexible
          as possible.  One special kind of flexibility is the ability
          to have a working copy containing files and directories with a
          mix of different working revision numbers.  Unfortunately,
=======================================
--- /trunk/src/en/book/ch03-advanced-topics.xml	Tue Sep  7 09:16:26 2010
+++ /trunk/src/en/book/ch03-advanced-topics.xml	Fri Oct  8 13:04:41 2010
@@ -74,20 +74,40 @@

        <indexterm>
          <primary>revisions</primary>
-        <secondary>revision keywords</secondary>
+        <secondary>keywords</secondary>
        </indexterm>
        <indexterm>
          <primary>HEAD</primary>
        </indexterm>
        <indexterm>
+        <primary>revisions</primary>
+        <secondary>keywords</secondary>
+        <tertiary>HEAD</tertiary>
+      </indexterm>
+      <indexterm>
          <primary>BASE</primary>
        </indexterm>
        <indexterm>
+        <primary>revisions</primary>
+        <secondary>keywords</secondary>
+        <tertiary>BASE</tertiary>
+      </indexterm>
+      <indexterm>
          <primary>COMMITTED</primary>
        </indexterm>
        <indexterm>
+        <primary>revisions</primary>
+        <secondary>keywords</secondary>
+        <tertiary>COMMITTED</tertiary>
+      </indexterm>
+      <indexterm>
          <primary>PREV</primary>
        </indexterm>
+      <indexterm>
+        <primary>revisions</primary>
+        <secondary>keywords</secondary>
+        <tertiary>PREV</tertiary>
+      </indexterm>

        <para>The Subversion client understands a number of revision
          keywords.  These keywords can be used instead of integer
@@ -181,7 +201,7 @@

        <indexterm>
          <primary>revisions</primary>
-        <secondary>specified as dates</secondary>
+        <secondary>as dates</secondary>
        </indexterm>

        <para>Revision numbers reveal nothing about the world outside




More information about the svnbook-dev mailing list