[svnbook commit] r3150 - trunk/src/en/book
cmpilato
noreply at red-bean.com
Mon Jun 16 14:38:44 CDT 2008
Author: cmpilato
Date: Mon Jun 16 14:38:44 2008
New Revision: 3150
Log:
Lose the 'Subversion's Features' section.
Modified:
trunk/src/en/book/ch00-preface.xml
Modified: trunk/src/en/book/ch00-preface.xml
==============================================================================
--- trunk/src/en/book/ch00-preface.xml (original)
+++ trunk/src/en/book/ch00-preface.xml Mon Jun 16 14:38:44 2008
@@ -787,130 +787,6 @@
</sect2>
<!-- =============================================================== -->
- <sect2 id="svn.intro.features">
-
- <title>Subversion's Features</title>
-
- <para>When discussing the features that Subversion brings to the
- version control table, it is often helpful to speak of them in
- terms of how they improve upon CVS's design. If you're not
- familiar with CVS, you may not understand all of these features.
- And if you're not familiar with version control at all, your
- eyes may glaze over unless you first read <xref
- linkend="svn.basic"/>, in which we provide a gentle introduction
- to version control.</para>
-
- <para>Subversion provides:</para>
-
- <variablelist>
- <varlistentry>
- <term>Directory versioning</term>
- <listitem>
- <para>CVS tracks only the history of individual files, but
- Subversion implements a <quote>virtual</quote> versioned
- filesystem that tracks changes to whole directory trees
- over time. Files <emphasis>and</emphasis> directories are
- versioned.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>True version history</term>
- <listitem>
- <para>Since CVS is limited to file versioning, operations
- such as copies and renames—which might happen to
- files, but which are really changes to the contents of
- some containing directory—aren't supported in CVS.
- Additionally, in CVS you cannot replace a versioned file
- with some new thing of the same name without the new item
- inheriting the history of the old—perhaps completely
- unrelated—file. With Subversion, you can add,
- delete, copy, and rename both files and directories. And
- every newly added file begins with a fresh, clean
- history all its own.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Atomic commits</term>
- <listitem>
- <para>A collection of modifications either goes into the
- repository completely or not at all. This allows
- developers to construct and commit changes as logical
- chunks and prevents problems that can occur when only a
- portion of a set of changes is successfully sent to the
- repository.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Versioned metadata</term>
- <listitem>
- <para>Each file and directory has a set of
- properties—keys and their values—associated
- with it. You can create and store any arbitrary key/value
- pairs you wish. Properties are versioned over time, just
- like file contents.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Choice of network layers</term>
- <listitem>
- <para>Subversion has an abstracted notion of repository
- access, making it easy for people to implement new network
- mechanisms. Subversion can plug into the Apache HTTP
- Server as an extension module. This gives Subversion a
- big advantage in stability and interoperability, and
- instant access to existing features provided by that
- server—authentication, authorization, wire
- compression, and so on. A more lightweight, standalone
- Subversion server process is also available. This server
- speaks a custom protocol that can be easily tunneled via
- SSH.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Consistent data handling</term>
- <listitem>
- <para>Subversion expresses file differences using a binary
- differencing algorithm, which works identically on both
- text (human-readable) and binary (human-unreadable) files.
- Both types of files are stored equally compressed in the
- repository, and differences are transmitted in both
- directions across the network.</para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Efficient branching and tagging</term>
- <listitem>
- <para>The cost of branching and tagging need not be
- proportional to the project size. Subversion creates
- branches and tags by simply copying the project, using a
- mechanism similar to a hard link. Thus these operations
- take only a very small, constant amount of time.
- </para>
- </listitem>
- </varlistentry>
-
- <varlistentry>
- <term>Hackability</term>
- <listitem>
- <para>Subversion has no historical baggage; it is
- implemented as a collection of shared C libraries with
- well-defined APIs. This makes Subversion extremely
- maintainable and usable by other applications and
- languages.</para>
- </listitem>
- </varlistentry>
-
- </variablelist>
-
- </sect2>
-
- <!-- =============================================================== -->
<sect2 id="svn.intro.architecture">
<title>Subversion's Architecture</title>
More information about the svnbook-dev
mailing list