[svnbook commit] r1437 - in trunk/src/ru: . book

dmitriy svnbook-dev at red-bean.com
Sat Jun 11 06:04:08 CDT 2005


Author: dmitriy
Date: Sat Jun 11 06:04:07 2005
New Revision: 1437

Added:
   trunk/src/ru/sync.py   (contents, props changed)
Modified:
   trunk/src/ru/LAST_UPDATED
   trunk/src/ru/Makefile
   trunk/src/ru/TRANSLATION-STATUS
   trunk/src/ru/book/ch02.xml
   trunk/src/ru/book/ch03.xml
Log:
Are translated 40% of ch03.xml and added new script for
synchronisation with en/

* TRANSLATION-STATUS
  change status for ch03.xml

* sync.py
  New script for synchronisation

* LAST_UPDATED
  Was deleted empty line

* book/ch02.xml
  '-' was replaced with '—'

* book/ch03.xml
  40% are translated

* Makefile
  Rule 'sync' was removed, now for this are used 'sync.py'



Modified: trunk/src/ru/LAST_UPDATED
==============================================================================
--- trunk/src/ru/LAST_UPDATED	(original)
+++ trunk/src/ru/LAST_UPDATED	Sat Jun 11 06:04:07 2005
@@ -1 +1 @@
-1420
+1420
\ No newline at end of file

Modified: trunk/src/ru/Makefile
==============================================================================
--- trunk/src/ru/Makefile	(original)
+++ trunk/src/ru/Makefile	Sat Jun 11 06:04:07 2005
@@ -16,19 +16,5 @@
 	  echo '<!ENTITY svn.version "">' > $(BOOK_VERSION_SOURCE); \
 	fi
 
-sync:
-	mkdir sync.LOCK
-	svn update
-	svn status -q
-	@echo
-	@echo Note local changes and press ENTER...
-	@read
-	svnversion . > HEADREV
-	svn merge -r$$(cat LAST_UPDATED):$$(cat HEADREV) \
-			https://svn.red-bean.com/svnbook/trunk/src/en/
-	@echo
-	mv HEADREV LAST_UPDATED
-	rmdir sync.LOCK
-
 dist-html-chunk:
 	../tools/book-dist.py --html-chunk --name svnbook-html-chunk-ru

Modified: trunk/src/ru/TRANSLATION-STATUS
==============================================================================
--- trunk/src/ru/TRANSLATION-STATUS	(original)
+++ trunk/src/ru/TRANSLATION-STATUS	Sat Jun 11 06:04:07 2005
@@ -14,7 +14,7 @@
     2.1.1 Urgent needs
 
       book/ch00.xml:
-        - Properly escape -- in @ENGLISH comments in 
+        - Properly escape -- in @ENGLISH comments in
           svn.preface.new-1-1.
         - Finish translation of svn.preface.acks, somewhat depends on
           ru/ProperNames.
@@ -39,7 +39,7 @@
       These files are partially translated and work is continued by the
       specified commiter, or they are in process of being updated.
 
-      book/ch03.xml dmitriy 0%
+      book/ch03.xml dmitriy 40%
       book/ch09.xml Maverick.Crank.GRey 0% [Initial translation]
 
     2.1.5. Forsaken

Modified: trunk/src/ru/book/ch02.xml
==============================================================================
--- trunk/src/ru/book/ch02.xml	(original)
+++ trunk/src/ru/book/ch02.xml	Sat Jun 11 06:04:07 2005
@@ -30,7 +30,7 @@
     @ ENGLISH }}} -->
     <para>Несмотря на то, что примеры в этой главе показывают людей
       делящих между собой набор исходников программы, помните, что
-      Subversion может управлять набором файлов любого типа - она не
+      Subversion может управлять набором файлов любого типа — она не
       ограничивается помощью компьютерным программистам.</para>
   </simplesect>
 
@@ -56,7 +56,7 @@
     <para>Subversion является централизованной системой для разделения
       информации. В ее основе хранилище, являющееся центром хранения
       данных. Хранилище хранит информацию в форме
-      <firstterm>дерева файлов</firstterm> - типичном
+      <firstterm>дерева файлов</firstterm> — типичном
       представлении файлов и директорий. Любое количество
       <firstterm>клиентов</firstterm> подключается к хранилищу и
       читает или записывает эти файлы. Записывая данные, клиент
@@ -85,7 +85,7 @@
     <para>Почему мы заостряем на этом внимание? Пока это звучит как
       определение типичного файл-сервера. И действительно, хранилище
       <emphasis>является</emphasis> разновидностью файл-сервера, однако не
-      совсем обычного. Что делает хранилище Subversion особенным - это то,
+      совсем обычного. Что делает хранилище Subversion особенным — это то,
       что он <emphasis>запоминает каждое внесенное изменение</emphasis>:
       любое изменение любого файла, равно как изменения в самом дереве
       директорий такие как добавление, удаление и реорганизация файлов и
@@ -182,9 +182,9 @@
         (так как система помнит каждое изменение) внесенные Гарри изменения
         <emphasis>не будут </emphasis>отражены в новой версии файла Сэлли,
         потому что, начиная, она, не видела изменения Гарри. Работа Гарри
-        фактически потеряна - или, по крайней мере, отсутствует в последней
-        версии файла - по случайности. Как раз этой ситуации мы и хотим
-        избежать!</para>
+        фактически потеряна — или, по крайней мере, отсутствует в
+        последней версии файла — по случайности. Как раз этой ситуации
+        мы и хотим избежать!</para>
 
       <figure id="svn.basic.vsn-models.problem-sharing.dia-1">
         <title>Проблема потери изменений</title>
@@ -224,7 +224,7 @@
         Блокирование файла это как взятие книги в библиотеке; если
         Гарри заблокировал файл то Салли ни как не сможет его изменить.
         Хранилище отклонит запрос, если она попытается заблокировать файл.
-        Все что ей остается - это читать файл и ждать когда Гарри закончит
+        Все что ей остается — это читать файл и ждать когда Гарри закончит
         свои изменения и снимет блокировку. После того как Гарри разблокирует
         файл, он возвращает его обратно и теперь Салли может получить его,
         заблокировать и редактировать. <xref
@@ -321,7 +321,7 @@
             файл В. Но допустим, что А и В зависят друг от друга и
             сделанные в каждом изменения семантически не совместимы.
             Неожиданно А и В больше не работают вместе. Блокирующая система
-            бессильна в предотвращении проблемы - вместо этого она
+            бессильна в предотвращении проблемы — вместо этого она
             обеспечила ложное чувство безопасности. Для Гарри и Салли
             просто вообразить, что, блокируя файлы каждый начинает безопасную
             изолированную задачу и не беспокоиться в начале об обсуждении их
@@ -355,7 +355,7 @@
         <firstterm>копирование-изменение-слияние</firstterm> в качестве
         альтернативы блокированию. В этой модели каждый пользовательский
         клиент связывается с хранилищем проекта и создает персональную
-        <firstterm>рабочую копию</firstterm> - локальное отражение
+        <firstterm>рабочую копию</firstterm> — локальное отражение
         файлов и директорий хранилища. После этого пользователи работают
         параллельно, изменяя свои личные копии. В конце концов, личные копии
         сливаются в новую, финальную версию. Обычно система управления
@@ -438,7 +438,7 @@
         сделать между ними выбор. Помните, что ПО не может автоматически
         разрешать конфликты; только человек способен к пониманию и выполнению
         осмысленного выбора. Разрешив вручную перекрывающиеся изменения -
-        возможно, после обсуждения с Салли - он может безопасно сохранить
+        возможно, после обсуждения с Салли — он может безопасно сохранить
         объединенный файл обратно в хранилище.</para>
 
       <!-- @ENGLISH {{{
@@ -508,9 +508,9 @@
         @ ENGLISH }}} -->
         <para>Модель копирование-изменение-слияние основывается на
           предположении о том, что файлы контекстно объединяемы: это так
-          если большинство файлов в хранилище - основаные на строках текстовые
-          файлы (такие как исходный код программы). Но для файлов бинарных
-          форматов, таких как графические или звуковые, как правило
+          если большинство файлов в хранилище — основаные на строках
+          текстовые файлы (такие как исходный код программы). Но для файлов
+          бинарных форматов, таких как графические или звуковые, как правило
           не возможно объединить конфликтующие изменения. В таких ситуациях
           пользователям действительно необходимо быть внимательными при
           изменении файла. Без раздельного доступа кто-то может впустую
@@ -997,11 +997,11 @@
           в Subversion относятся <emphasis>ко всем</emphasis>, а не только к
           отдельно взятым файлам. Каждый номер правки соответствует целому
           дереву, отдельному состоянию хранилища после зафиксированного
-          изменения. Иначе говоря - правка N представляет состояние файловой
-          системы хранилища после выполнения N-ой фиксации. Когда
+          изменения. Иначе говоря — правка N представляет состояние
+          файловой системы хранилища после выполнения N-ой фиксации. Когда
           пользователи Subversion говорят о <quote>правке 5 <filename>foo.c
           </filename></quote>, на самом деле речь идет о <quote><filename>
-            foo.c</filename> входящем в правку 5</quote>. Замете, что, в общем
+          foo.c</filename> входящем в правку 5</quote>. Замете, что, в общем
           случае, правки N и M файла <emphasis>не обязательно</emphasis>
           будут отличаться. Так как CVS используется пофайловая нумерация
           правок, пользователи CVS могут обратиться за более подробной
@@ -1250,10 +1250,6 @@
         воспользуйтесь командой <command>svn status</command>. За более
         подробной информацией об этой команде обратитесь к <xref
         linkend="svn.tour.cycle.examine.status" />.</para>
-      <para>This may sound like a lot to keep track of, but the
-        <command>svn status</command> command will show you the state
-        of any item in your working copy.  For more information on
-        that command, see <xref linkend="svn.tour.cycle.examine.status" />.</para>
 
     </sect2>
 

Modified: trunk/src/ru/book/ch03.xml
==============================================================================
--- trunk/src/ru/book/ch03.xml	(original)
+++ trunk/src/ru/book/ch03.xml	Sat Jun 11 06:04:07 2005
@@ -9,6 +9,7 @@
 
   <simplesect>
 
+    <!-- @ENGLISH {{{
     <para>Now we will go into the details of using Subversion.  By the
       time you reach the end of this chapter, you will be able to
       perform almost all the tasks you need to use Subversion in a
@@ -17,7 +18,17 @@
       changes. You'll also see how to bring changes made by others
       into your working copy, examine them, and work through any
       conflicts that might arise.</para>
+    @ ENGLISH }}} -->
+    <para>Теперь перейдем к более тесному использованию Subversion.
+      Ко времени когда вы достигнете конца этой главы, вы сможете
+      выполнить практически все задачи, возникающие при использовании
+      Subversion в течении обычного рабочего дня. Вы начнете с
+      первоначального создания рабочей копии вашего кода и пойдете
+      через внесение изменений и проверку этих изменений. Вы познакомитесь
+      с тем, как внедрить изменения сделанные другими в вашу рабочую копию,
+      проверить их и решить любые возникшие конфликты.</para>
 
+    <!-- @ENGLISH {{{
     <para>Note that this chapter is not meant to be an exhaustive list
       of all Subversion's commands—rather, it's a conversational
       introduction to the most common Subversion tasks you'll
@@ -25,6 +36,14 @@
       <xref linkend="svn.basic"/> and are familiar with the general
       model of Subversion.  For a complete reference of all commands,
       see <xref linkend="svn.ref"/>.</para>
+    @ ENGLISH }}} -->
+    <para>Обратите внимание на то, что эта глава не ставит цели быть
+      всеобъемлющим списком всех команд Subversion — скорее это
+      описательное введение в наиболее вероятные задачи с которыми вы можете
+      столкнуться. Эта глава предполагает, что вы прочитали и поняли <xref
+      linkend="svn.basic"/> и хорошо разобрались с общей моделью Subversion.
+      За подробным описанием всех команд обратитесь в <xref
+      linkend="svn.ref"/>.</para>
 
   </simplesect>
 
@@ -32,15 +51,25 @@
   <!-- ======================== SECTION 1 ============================== -->
   <!-- ================================================================= -->
   <sect1 id="svn.tour.help">
+    <!-- @ENGLISH {{{
     <title>Help!</title>
+    @ ENGLISH }}} -->
+    <title>Читайте справку!</title>
 
-
+    <!-- @ENGLISH {{{
     <para>Before reading on, here is the most important command you'll
       ever need when using Subversion: <command>svn help</command>.
       The Subversion command-line client is
       self-documenting—at any time, a quick <command>svn help
       <subcommand></command> will describe the syntax, switches,
       and behavior of the <command>subcommand</command>.</para>
+    @ ENGLISH }}} -->
+    <para>Перед тем как продолжить, приведем самую главную из всех команду
+      при использовании Subversion: <command>svn help</command>.
+      Клиент для командной строки в Subversion является самодокуметируемым -
+      в любой момент быстрый запуск <command>svn help
+      <subcommand></command> покажет описание синтаксиса, параметров и
+      поведения подкоманды <command>subcommand</command>.</para>
 
   </sect1>
 
@@ -48,14 +77,24 @@
   <!-- ======================== SECTION 2 ============================== -->
   <!-- ================================================================= -->
   <sect1 id="svn.tour.import">
+    <!-- @ENGLISH {{{
     <title>Import</title>
+    @ ENGLISH }}} -->
+    <title>Импорт</title>
 
+    <!-- @ENGLISH {{{
     <para>You use <command>svn import</command> to import a new
       project into a Subversion repository.  While this is most likely
       the very first thing you will do when you set up your Subversion
       server, it's not something that happens very often.  For a
       detailed description of import, see <xref
       linkend="svn.tour.other.import"/> later in this chapter.</para>
+    @ ENGLISH }}} -->
+    <para>Для импортированния нового проекта в Subversion-хранилище
+      вы используете <command>svn import</command>. В то время как
+      вероятно, это первое, что вы делаете при настройке Subversion-сервера
+      выполняется это не так и часто. Подробное описание импорта см.
+      <xref linkend="svn.tour.other.import"/> далее в этой главе.</para>
 
   </sect1>
 
@@ -63,32 +102,60 @@
   <!-- ======================== SECTION 3 ============================== -->
   <!-- ================================================================= -->
   <sect1 id="svn.tour.revs">
+    <!-- @ENGLISH {{{
     <title>Revisions: Numbers, Keywords, and Dates, Oh My!</title>
+    @ ENGLISH }}} -->
+    <title>Правки: Номера, Ключевые слова и Даты, Oh My!</title>
 
+    <!-- @ENGLISH {{{
     <para>Before we go on, you should know a bit about how to identify
       a particular revision in your repository.  As you learned in
       <xref linkend="svn.basic.in-action.revs"/>, a revision is a
       <quote>snapshot</quote> of the repository at a particular moment
       in time.  As you continue to commit and grow your repository,
       you need a mechanism for identifying these snapshots.</para>
+    @ ENGLISH }}} -->
+    <para>Перед тем как продолжить, вам нужно немного узнать о том, как
+      идентифицировать отдельную правку в хранилище. Как вы узнали в
+      <xref linkend="svn.basic.in-action.revs"/> правка представляет собой
+      <quote>снимок</quote> хранилища в конкретный момент времени.
+      Помере продолжения фиксаций и увеличения хранилища вам потребуется
+      механизм для идентифицирования этих снимков.</para>
 
+    <!-- @ENGLISH {{{
     <para>You specify these revisions by using the
-      <option>--revision</option> (<option>-r</option>) switch plus
-      the revision you want (<command>svn --revision REV</command>) or
+      <option>–-revision</option> (<option>-r</option>) switch plus
+      the revision you want (<command>svn –-revision REV</command>) or
       you can specify a range by separating two revisions with a colon
-      (<command>svn --revision REV1:REV2</command>).  And Subversion
+      (<command>svn –-revision REV1:REV2</command>).  And Subversion
       lets you refer to these revisions by number, keyword, or
       date.</para>
-    
+    @ ENGLISH }}} -->
+    <para>Для указания этих правок используется ключ
+      <option>--revision</option> (<option>-r</option>) плюс нужная
+      правка либо можно указать диапазон разделяя две правки двоеточием
+      (<command>svn --revision REV1:REV2</command>). Subversion
+      позволяет обращаться к правкам по номеру, ключевому слову или
+      дате.</para>
+
     <sect2 id="svn.tour.revs.numbers">
+      <!-- @ENGLISH {{{
       <title>Revision Numbers</title>
-      
+      @ ENGLISH }}} -->
+      <title>Номера правок</title>
+
+      <!-- @ENGLISH {{{
       <para>When you create a new Subversion repository, it begins its
         life at revision zero and each successive commit increases the
         revision number by one.  After your commit completes, the
         Subversion client informs you of the new revision
         number:</para>
-      
+      @ ENGLISH }}} -->
+      <para>Когда вы создаете новое хранилище Subversion, свою жизнь оно
+        начинает с правки ноль и каждая последующая фиксация увеличивает
+        номер правки на единицу. После завершения фиксации, Subversion
+        клиент сообщает вам новый номер правки:</para>
+
       <screen>
 $ svn commit --message "Corrected number of cheese slices."
 Sending        sandwich.txt
@@ -96,23 +163,40 @@
 Committed revision 3.
 </screen>
 
+      <!-- @ENGLISH {{{
       <para>If at any point in the future you want to refer to that
         revision (we'll see how and why we might want to do that later
         in this chapter), you can refer to it as
         <quote>3</quote>.</para>
+      @ ENGLISH }}} -->
+      <para>В будущем, в любой момент если вам нужно будет сослаться
+        на эту правку (как и почему может возникнуть такая необходимость
+        будет видна дальше по тексту) вы можете сослаться на нее как на
+        <quote>3</quote>.</para>
 
     </sect2>
-    
+
     <sect2 id="svn.tour.revs.keywords">
+      <!-- @ENGLISH {{{
       <title>Revision Keywords</title>
-      
+      @ ENGLISH }}} -->
+      <title>Ключевые слова правок</title>
+
+      <!-- @ENGLISH {{{
       <para>The Subversion client understands a number of
         <firstterm>revision keywords</firstterm>.  These keywords
         can be used instead of integer arguments to the
-        <option>--revision</option> switch, and are resolved into
+        <option>–-revision</option> switch, and are resolved into
         specific revision numbers by Subversion:</para>
+      @ ENGLISH }}} -->
+      <para>Subversion клиент понимает определенное количество
+        <firstterm>ключевых слов правок</firstterm>. Эти ключевые слова
+        моогут буть использованы в место цифровых аргументов в параметре
+        <option>--revision</option> и будут преобразованы Subversion
+        в конкретные номера правок:</para>
 
       <note>
+        <!-- @ENGLISH {{{
         <para>Each directory in your working copy contains an
           administrative subdirectory called
           <filename>.svn</filename>.  For every file in a directory,
@@ -124,97 +208,178 @@
           refer to this file as the <firstterm>pristine
           copy</firstterm> or <firstterm>text-base</firstterm> version
           of your file, and it's always an exact byte-for-byte copy of
-          the file as it exists in the repository.</para> 
+          the file as it exists in the repository.</para>
+        @ ENGLISH }}} -->
+        <para>Каждая директория рабочей копии содержит административную
+          поддиректорию <filename>.svn</filename>. Для каждого файла в
+          директории, Subversion сохраняет копию этого файла в
+          административной папке. Эта копия является не модифицированной
+          (без раскрытия ключевых слов, без преобразования концовок строк,
+          без чего-либо другого) копией файла какой он есть в последней
+          правке (названой <quote>BASE</quote>) до которой вы обновили
+          его в вашей рабочей копии. Мы обращаемся к этому файлу, как
+          к <firstterm>первоисточнику</firstterm> или
+          <firstterm>базовой</firstterm> версии вашего файла и он всегда
+          является точной по байтовой копией того файла который находится в
+          хранилище.</para>
         </note>
-      
+
       <variablelist>
-        
+
         <varlistentry>
           <term>HEAD</term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>The latest revision in the repository.</para>
+            @ ENGLISH }}} -->
+            <para>Последняя правка хранилища</para>
           </listitem>
         </varlistentry>
-        
+
         <varlistentry>
           <term>BASE</term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>The <quote>pristine</quote> revision of an item in a
               working copy.</para>
+            @ ENGLISH }}} -->
+            <para><quote>Исходная</quote> правка элемента в рабочей
+              копии.</para>
           </listitem>
         </varlistentry>
-        
+
         <varlistentry>
           <term>COMMITTED</term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>The last revision in which an item changed before (or
               at) <literal>BASE</literal>.</para>
+            @ ENGLISH }}} -->
+            <para>Последняя правка в которой элемент изменялся в диапазоне до
+              (или включая) <literal>BASE</literal>.</para>
           </listitem>
         </varlistentry>
-        
+
         <varlistentry>
           <term>PREV</term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>The revision just <emphasis>before</emphasis> the last
               revision in which an item changed.  (Technically,
               <literal>COMMITTED</literal> - 1.)</para>
+            @ ENGLISH }}} -->
+            <para>Ревизия, <emphasis>предшествующая</emphasis> последней
+              ревизии, в которой элемент менялся. (Технически, <literal>
+              COMMITTED</literal> - 1.)</para>
           </listitem>
         </varlistentry>
-        
+
       </variablelist>
 
       <note>
+        <!-- @ENGLISH {{{
         <para><literal>PREV</literal>, <literal>BASE</literal>, and
           <literal>COMMITTED</literal> can be used to refer to local
           paths, but not to URLs.</para>
+        @ ENGLISH }}} -->
+        <para><literal>PREV</literal>, <literal>BASE</literal> и
+          <literal>COMMITTED</literal> могут использоваться при обращении по
+          локальным путям, но не по URL.</para>
       </note>
-      
+
+      <!-- @ENGLISH {{{
       <para>Here are some examples of revision keywords in action.
         Don't worry if the commands don't make sense yet; we'll be
         explaining these commands as we go through the chapter:</para>
-      
+      @ ENGLISH }}} -->
+      <para>Вот несколько примеров использования ключевых слов правок.
+        Не волнуйтесь, если смысл команд пока не понятен; по мере дальнейшего
+        продвижения мы объясним эти команды:</para>
+
       <screen>
 $ svn diff --revision PREV:COMMITTED foo.c
+<!-- @ENGLISH {{{
 # shows the last change committed to foo.c
+@ ENGLISH }}} -->
+# показать последнее изменение зафиксированное для foo.c
 
 $ svn log --revision HEAD
+<!-- @ENGLISH {{{
 # shows log message for the latest repository commit
+@ ENGLISH }}} -->
+# показать лог для последней фиксации хранилища
 
 $ svn diff --revision HEAD
+<!-- @ENGLISH {{{
 # compares your working file (with local mods) to the latest version
 # in the repository.
+@ ENGLISH }}} -->
+# сравнение вашего рабочего файла (с учетом локальных изменений)
+# с последней правкой в хранилище
 
 $ svn diff --revision BASE:HEAD foo.c
-# compares your <quote>pristine</quote> foo.c (no local mods) with the 
+<!-- @ENGLISH {{{
+# compares your <quote>pristine</quote> foo.c (no local mods) with the
 # latest version in the repository
+@ ENGLISH }}} -->
+# сравнение вашего <quote>исходного</quote> foo.c (без учета локальных
+# изменений) с последней версией в хранилище
 
 $ svn log --revision BASE:HEAD
+<!-- @ENGLISH {{{
 # shows all commit logs since you last updated
+@ ENGLISH }}} -->
+# показ всех логов фиксаций со времени вашего последнего обновления
 
 $ svn update --revision PREV foo.c
+<!-- @ENGLISH {{{
 # rewinds the last change on foo.c.
 # (foo.c's working revision is decreased.)
+@ ENGLISH }}} -->
+# откат последних изменений в foo.c.
+# (рабочая ревизия foo.c понижается.)
 </screen>
-      
+
+      <!-- @ENGLISH {{{
       <para>These keywords allow you to perform many common (and
         helpful) operations without having to look up specific
         revision numbers or remember the exact revision of your
         working copy.</para>
-      
+      @ ENGLISH }}} -->
+      <para>Эти ключевые слова позволят вам выполнять многие часто
+        используемые (и полезные) операции без необходимости обращаться к
+        конкретным номерам ревизий или точно помнить ревизию своей рабочей
+        копии.</para>
+
     </sect2>
-    
+
     <sect2 id="svn.tour.revs.dates">
+      <!-- @ENGLISH {{{
       <title>Revision Dates</title>
-      
+      @ ENGLISH }}} -->
+      <title>Даты правок</title>
+
+      <!-- @ENGLISH {{{
       <para>Anywhere that you specify a revision number or revision
         keyword, you can also specify a date
         inside curly braces <quote>{}</quote>.  You can even access
         a range of changes in the repository using both dates and
         revisions together!</para>
-      
+      @ ENGLISH }}} -->
+      <para>Везде, где вы указываете номер правки или ключевое слово,
+        вы так же можете использать и дату, указав ее в фигурных скобках
+        <quote>{}</quote>. Вы даже можете получить доступ к диапазону
+        изменений в хранилище, указывая даты и номера
+        ревизий одновременно!</para>
+
+      <!-- @ENGLISH {{{
       <para>Here are examples of the date formats that Subversion
         accepts.  Remember to use quotes around any date that contains
         spaces.</para>
+      @ ENGLISH }}} -->
+      <para>Вот примеры форматов, используемых для указания даты,
+        которые принимает Subversion. Не забывайте использовать кавычки
+        при написании даты содержащей пробелы.</para>
 
       <screen>
 $ svn checkout --revision {2002-02-17}
@@ -230,21 +395,29 @@
 $ svn checkout --revision {20020217T1530-0500}
 …
 </screen>
-      
+
+      <!-- @ENGLISH {{{
       <para>When you specify a date as a revision, Subversion finds
         the most recent revision of the repository as of that
         date:</para>
-        
+      @ ENGLISH }}} -->
+      <para>Когда вы указываете в качестве правки дату, Subversion
+        найдет правку наиболее соответствующую запрошенной дате:</para>
+
       <screen>
 $ svn log --revision {2002-11-28}
 ------------------------------------------------------------------------
 r12 | ira | 2002-11-27 12:31:51 -0600 (Wed, 27 Nov 2002) | 6 lines
 …
 </screen>
-        
+
       <sidebar>
+        <!-- @ENGLISH {{{
         <title>Is Subversion a Day Early?</title>
-        
+        @ ENGLISH }}} -->
+        <title>Is Subversion a Day Early?</title>
+
+        <!-- @ENGLISH {{{
         <para>If you specify a single date as a revision without
           specifying a time of day (for example
           <literal>2002-11-27</literal>), you may think that Subversion
@@ -257,28 +430,54 @@
           <literal>2002-11-27</literal>, Subversion assumes a time of
           00:00:00, so looking for the most recent revision won't
           return anything on the day of the 27th.</para>
+        @ ENGLISH }}} -->
+        <para>Указав при обращении к правке только дату, без указания
+          времени (например, <literal>2002-11-27</literal>), наверное,
+          вы подумаете, что Subversion выдаст вам последнюю правку за 27
+          ноября. А вместо этого можете получить правку за 26 число или
+          даже более раннюю. Помните, что Subversion будет искать
+          <emphasis>наиболее отвечающую</emphasis> указанной вами дате
+          правку хранилища. Если вы укажите дату без указания времени,
+          например <literal>2002-11-27</literal>, Subversion примет за
+          временную метку 00:00:00 и таким образом поиск ближайшей к 27
+          числу ревизии не даст ничего относящегося к 27 ноября.</para>
 
+        <!-- @ENGLISH {{{
         <para>If you want to include the 27th in your search, you can
           either specify the 27th with the time (<literal>{"2002-11-27
           23:59"}</literal>), or just specify the next day
           (<literal>{2002-11-28}</literal>).</para>
-        
+        @ ENGLISH }}} -->
+        <para>Если вам необходимо учесть при поиске 27 число вы можете либо
+          указать 27 число с временной меткой (<literal>{"2002-11-27
+          23:59"}</literal>) либо просто использовать в запросе следующий
+          день (<literal>{2002-11-28}</literal>).</para>
+
       </sidebar>
-      
+
+      <!-- @ENGLISH {{{
       <para>You can also use a range of dates.  Subversion will find
         all revisions between both dates, inclusive:</para>
-      
+      @ ENGLISH }}} -->
+      <para>Кроме того, вы можете использовать диапазоны дат. Subversion
+        найдет все правки между обеими датами включительно:</para>
+
       <screen>
 $ svn log --revision {2002-11-20}:{2002-11-29}
 …
 </screen>
-        
+
+      <!-- @ENGLISH {{{
       <para>As we pointed out, you can also mix dates and revisions:</para>
-      
+      @ ENGLISH }}} -->
+      <para>Как мы уже говорили, вы можете использовать даты и номера
+        ревизий одновременно:</para>
+
       <screen>
 $ svn log --revision {2002-11-20}:4040
 </screen>
 
+      <!-- @ENGLISH {{{
       <para>Users should be aware of a subtlety that can become quite
         a stumbling-block when dealing with dates in Subversion.  Since
         the timestamp of a revision is stored as a property of the
@@ -287,24 +486,42 @@
         complete falsifications of true chronology, or even removed
         altogether.  This will wreak havoc on the internal
         date-to-revision conversion that Subversion performs.</para>
-        
+      @ ENGLISH }}} -->
+      <para>Пользователи должны осознавать тонкость, которая может стать
+        камнем преткновения при работе с Subversion. Так как временная метка
+        правки сохраняется как свойство правки — как не отслеживаемое,
+        изменяемое свойство правки — временная метка может
+        быть изменена, что приведет к искажению истинной хронологии, или даже
+        полной ее потере. Такие действия нарушат работу внутреннего механизма
+        перевода даты в номер правки используемого Subversion.</para>
+
     </sect2>
-      
+
   </sect1>
 
   <!-- ================================================================= -->
   <!-- ======================== SECTION 4 ============================== -->
   <!-- ================================================================= -->
   <sect1 id="svn.tour.initial">
+    <!-- @ENGLISH {{{
     <title>Initial Checkout</title>
+    @ ENGLISH }}} -->
+    <title>Создание рабочей копии</title>
 
+    <!-- @ENGLISH {{{
     <para>Most of the time, you will start using a Subversion
       repository by doing a <firstterm>checkout</firstterm> of your
       project.  Checking out a repository creates a copy of it on your
       local machine.  This copy contains the <literal>HEAD</literal>
       (latest revision) of the Subversion repository that you specify
       on the command line:</para>
-    
+    @ ENGLISH }}} -->
+    <para>Как правило использование хранилища Subversion начинается с
+      <firstterm>создания рабочей копии</firstterm> вашего проекта.
+      При создании рабочей копии на вашей локальной машине создается копия
+      хранилища. Эта копия содержит <literal>HEAD</literal> (последнюю
+      ревизию) указаного вами в командной строке хранилища:</para>
+
 
     <screen>
 $ svn checkout http://svn.collab.net/repos/svn/trunk
@@ -316,22 +533,37 @@
 …
 Checked out revision 2499.
 </screen>
-    
+
     <sidebar>
+      <!-- @ENGLISH {{{
       <title>Repository Layout</title>
+      @ ENGLISH }}} -->
+      <title>Структура хранилища</title>
 
+      <!-- @ENGLISH {{{
       <para>If you're wondering what <literal>trunk</literal> is all
         about in the above URL, it's part of the way we recommend
         you lay out your Subversion repository which we'll talk a lot
         more about in <xref linkend="svn.branchmerge"/>.</para>
+      @ ENGLISH }}} -->
+      <para>Если вас удивляет почему в приведенном выше URL встречается
+        <literal>trunk</literal> — это часть рекомендуемой нами
+        структуры хранилища Subversion, о ней мы поговорим более подробно в
+        <xref linkend="svn.branchmerge"/>.</para>
 
     </sidebar>
 
+    <!-- @ENGLISH {{{
     <para>Although the above example checks out the trunk directory,
       you can just as easily check out any deep subdirectory of a
       repository by specifying the subdirectory in the checkout
       URL:</para>
-    
+    @ ENGLISH }}} -->
+    <para>Хотя в приведенном примере рабочая копия создается на
+      основе корневой директории вы можете легко создать рабочую копию на
+      основе поддиректории любой степени вложенности, указав в URL при
+      создании рабочей копии поддиректорию:</para>
+
     <screen>
 $ svn checkout http://svn.collab.net/repos/svn/trunk/doc/book/tools
 A  tools/readme-dblite.html
@@ -342,7 +574,8 @@
 …
 Checked out revision 2499.
 </screen>
-    
+
+    <!-- @ENGLISH {{{
     <para>Since Subversion uses a <quote>copy-modify-merge</quote>
       model instead of <quote>lock-modify-unlock</quote> (see <xref
       linkend="svn.basic"/>), you're already able to start making
@@ -351,8 +584,18 @@
       directories on your system.  You can edit and change them, move
       them around, you can even delete the entire working copy and
       forget about it.</para>
+    @ ENGLISH }}} -->
+    <para>Так как Subversion использует модель
+      <quote>копирование-изменение-слияние</quote> вместо модели
+      <quote>блокирование-изменение-разблокирование</quote> (см.
+      <xref linkend="svn.basic"/>) вы уже можете начинать вносить
+      изменения в файлы и директории своей рабочей копии. Ваша рабочая
+      копия ничем не отличается от любого другого набора файлов на вашей
+      системе. Вы можете редактировать и менять их, перемещать, вы даже
+      можете полностью удалить рабочую копию и забыть о ней.</para>
 
       <note>
+        <!-- @ENGLISH {{{
         <para>While your working copy is <quote>just like any other
           collection of files and directories on your system</quote>,
           you need to let Subversion know if you're going to be
@@ -362,15 +605,34 @@
           move</command> instead of the copy and move commands
           provided by your operating system.  We'll talk more about
           them later in this chapter.</para>
+        @ ENGLISH }}} -->
+        <para>Не смотря на то что рабочая копия выглядит <quote>как и любой
+          другой набор файлов на вашей системе</quote> вы должны поставить в
+          известность Subversion если вы будете что либо реорганизовывать в
+          рабочей копии. Если вы хотите скопировать или переместить элемент в
+          рабочей копии вы должны использовать команду <command>svn
+          copy</command> или <command>svn move</command> вместо аналогичных
+          команд предлагаемых операционной системой. Мы поговорим о них
+          позже в этой главе.</para>
       </note>
 
+    <!-- @ENGLISH {{{
     <para>Unless you're ready to commit a new file or directory, or
       changes to existing ones, there's no need to further notify the
       Subversion server that you've done anything.</para>
+    @ ENGLISH }}} -->
+    <para>Исключение составляют случаи когда вы готовы зафиксировать новый
+      файл или директорию, или внести изменения в один из существующих, для
+      этого не нужно дополнительно извещать Subversion-сервер о своих
+      действиях.</para>
 
     <sidebar>
+      <!-- @ENGLISH {{{
       <title>What's with the <filename>.svn</filename> directory?</title>
+      @ ENGLISH }}} -->
+      <title>А что на счет директории <filename>.svn</filename>?</title>
 
+      <!-- @ENGLISH {{{
       <para>Every directory in a working copy contains an
         administrative area, a subdirectory named
         <filename>.svn</filename>.  Usually, directory listing
@@ -378,14 +640,29 @@
         an important directory.  Whatever you do, don't delete or
         change anything in the administrative area!  Subversion
         depends on it to manage your working copy.</para>
+      @ ENGLISH }}} -->
+      <para>Каждая директория в рабочей копии содержит административную
+        область, поддиректорию с названием <filename>.svn</filename>.
+        Обычно, команды используемые для вывода листинга директории не
+        показывают эту поддиректорию, но тем не менее это важная
+        директория. Что бы вы не делали, не удаляйте или не меняйте ничего в
+        административной области! Subversion зависит от нее при управлении
+        рабочей копией.</para>
 
     </sidebar>
 
+    <!-- @ENGLISH {{{
     <para>While you can certainly check out a working copy with the
       URL of the repository as the only argument, you can also specify
       a directory after your repository URL.  This places your working
       copy in the new directory that you name.  For example:</para>
-    
+    @ ENGLISH }}} -->
+    <para>Не смотря на то, что вы конечно можете создать рабочую копию
+      указав только один аргумент в виде URL хранилища, вы можете
+      после URL хранилища указать директорию. Тогда ваша рабочая копия
+      будет находиться в новой директории с указанным вами именем.
+      Например:</para>
+
     <screen>
 $ svn checkout http://svn.collab.net/repos/svn/trunk subv
 A  subv/subversion.dsw
@@ -396,10 +673,15 @@
 …
 Checked out revision 2499.
 </screen>
-    
+
+    <!-- @ENGLISH {{{
     <para>That will place your working copy in a directory named
       <literal>subv</literal> instead of a directory named
       <literal>trunk</literal> as we did previously.</para>
+    @ ENGLISH }}} -->
+    <para>Эта команда поместит рабочую копию в директорию с именем
+      <literal>subv</literal>, вместо директории <literal>trunk</literal>
+      как мы сделали раньше.</para>
 
   </sect1>
 
@@ -407,28 +689,46 @@
   <!-- ======================== SECTION 5 ============================== -->
   <!-- ================================================================= -->
   <sect1 id="svn.tour.cycle">
+    <!-- @ENGLISH {{{
     <title>Basic Work Cycle</title>
+    @ ENGLISH }}} -->
+    <title>Простейший рабочий цикл</title>
 
+    <!-- @ENGLISH {{{
     <para>Subversion has numerous features, options, bells and whistles, but on
       a day-to-day basis, odds are that you will only use a few of them. In
       this section we'll run through the most common things that you might
       find yourself doing with Subversion in the course of a day's work.</para>
-    
+    @ ENGLISH }}} -->
+    <para>Subversion имеет множество возможностей, опций и украшательств, но
+      на постоянной основе используются только некоторые из них. В этом
+      разделе мы пройдемся по наиболее часто выполняемым в течении рабочего
+      дня задачам.</para>
+
+    <!-- @ENGLISH {{{
     <para>The typical work cycle looks like this:</para>
+    @ ENGLISH }}} -->
+    <para>Типичный рабочий цикл выглядит примерно так:</para>
 
     <itemizedlist>
       <listitem>
+        <!-- @ENGLISH {{{
         <para>Update your working copy</para>
+        @ ENGLISH }}} -->
+        <para>Обновление рабочей копии</para>
         <itemizedlist>
           <listitem>
             <para><command>svn update</command></para>
           </listitem>
         </itemizedlist>
-        
+
       </listitem>
-      
+
       <listitem>
+        <!-- @ENGLISH {{{
         <para>Make changes</para>
+        @ ENGLISH }}} -->
+        <para>Внесение изменений</para>
         <itemizedlist>
           <listitem>
             <para><command>svn add</command></para>
@@ -446,7 +746,10 @@
       </listitem>
 
       <listitem>
+        <!-- @ENGLISH {{{
         <para>Examine your changes</para>
+        @ ENGLISH }}} -->
+        <para>Анализ изменений</para>
         <itemizedlist>
           <listitem>
             <para><command>svn status</command></para>
@@ -461,7 +764,11 @@
       </listitem>
 
       <listitem>
+        <!-- @ENGLISH {{{
         <para>Merge others' changes into your working copy</para>
+        @ ENGLISH }}} -->
+        <para>Объединение изменений выполненных другими с вашей рабочей
+          копией</para>
         <itemizedlist>
           <listitem>
             <para><command>svn update</command></para>
@@ -473,7 +780,10 @@
       </listitem>
 
       <listitem>
+        <!-- @ENGLISH {{{
         <para>Commit your changes</para>
+        @ ENGLISH }}} -->
+        <para>Фиксация изменений</para>
         <itemizedlist>
           <listitem>
             <para><command>svn commit</command></para>
@@ -483,76 +793,124 @@
     </itemizedlist>
 
     <sect2 id="svn.tour.cycle.update">
+      <!-- @ENGLISH {{{
       <title>Update Your Working Copy</title>
+      @ ENGLISH }}} -->
+      <title>Обновление рабочей копии</title>
 
+      <!-- @ENGLISH {{{
       <para>When working on a project with a team, you'll want to
         update your working copy to receive any changes made since
         your last update by other developers on the project.  Use
         <command>svn update</command> to bring your working copy into
         sync with the latest revision in the repository.</para>
-      
+      @ ENGLISH }}} -->
+      <para>При командной работе над проектом обновление рабочей копии
+        необходимо для получения любых изменений внесенных с момента
+        вашего последнего обновления другими разработчиками проекта.
+        Используйте <command>svn update</command> для синхронизации вашей
+        рабочей копии с последей правкой в хранилище.</para>
+
       <screen>
 $ svn update
 U  foo.c
 U  bar.c
 Updated to revision 2.
 </screen>
-      
+
+      <!-- @ENGLISH {{{
       <para>In this case, someone else checked in modifications to
         both <filename>foo.c</filename> and <filename>bar.c</filename>
         since the last time you updated, and Subversion has updated
         your working copy to include those changes.</para>
-      
+      @ ENGLISH }}} -->
+      <para>В данном случае, кто-то другой зафиксировал изменения в файлах
+        <filename>foo.c</filename> и <filename>bar.c</filename> после
+        вашего последнего обновления, и Subversion обновила вашу рабочую копию
+        для включения этих изменений.</para>
+
+      <!-- @ENGLISH {{{
       <para>Let's examine the output of <command>svn update</command>
         a bit more.  When the server sends changes to your working
         copy, a letter code is displayed next to each item to let you
         know what actions Subversion performed to bring your working
         copy up-to-date:</para>
+      @ ENGLISH }}} -->
+      <para>Рассмотрим выводимую <command>svn update</command> информацию
+        чуть подробнее. Когда сервер отправляет изменения в вашу рабочую копию
+        для каждого элемента выводится буквенный код, определяющий, какое
+        действие выполнила Subversion для приведения ваше рабочей копии в
+        актуальное состояние:</para>
 
       <variablelist>
 
         <varlistentry>
           <term><computeroutput>U      foo</computeroutput></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>File <filename>foo</filename> was
               <computeroutput>U</computeroutput>pdated (received changes
               from the server).</para>
+            @ ENGLISH }}} -->
+            <para>Файл <filename>foo</filename> был
+              <computeroutput>U</computeroutput>pdated — обновлен
+              (получил изменения с сервера).</para>
           </listitem>
         </varlistentry>
 
         <varlistentry>
           <term><computeroutput>A      foo</computeroutput></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>File or directory <filename>foo</filename> was
               <computeroutput>A</computeroutput>dded to your working
               copy.</para>
+            @ ENGLISH }}} -->
+            <para>Файл или директория <filename>foo</filename> были
+              <computeroutput>A</computeroutput>dded — добавлены в
+              рабочую копию.</para>
           </listitem>
         </varlistentry>
 
         <varlistentry>
           <term><computeroutput>D      foo</computeroutput></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>File or directory <filename>foo</filename> was
               <computeroutput>D</computeroutput>eleted from your working
               copy.</para>
+            @ ENGLISH }}} -->
+            <para>Файл или директория <filename>foo</filename> были
+              <computeroutput>D</computeroutput>eleted — удалены
+              из рабочей копии.</para>
           </listitem>
         </varlistentry>
-        
+
         <varlistentry>
           <term><computeroutput>R      foo</computeroutput></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>File or directory <filename>foo</filename> was
               <computeroutput>R</computeroutput>eplaced in your working
               copy; that is, <filename>foo</filename> was deleted, and a
               new item with the same name was added.  While they may have
               the same name, the repository considers them to be distinct
               objects with distinct histories.</para>
+            @ ENGLISH }}} -->
+            <para>Файл или директория <filename>foo</filename> была
+              <computeroutput>R</computeroutput>eplaced — заменена
+              в рабочей копии; это значит, что <filename>foo</filename>
+              был удален, а новый элемент с таким же именем был добавлен.
+              Не смотря на то, что они могут иметь одинаковое имя,
+              хранилище рассматривает их как разные объекты с
+              отдельной историей.</para>
           </listitem>
         </varlistentry>
 
         <varlistentry>
           <term><computeroutput>G      foo</computeroutput></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>File <filename>foo</filename> received new changes
               from the repository, but your local copy of the file had
               your modifications.  Either the changes did not intersect,
@@ -560,18 +918,33 @@
               modifications, so Subversion has successfully
               mer<computeroutput>G</computeroutput>ed the repository's
               changes into the file without a problem.</para>
+            @ ENGLISH }}} -->
+            <para>Файл <filename>foo</filename> получил новые изменения
+              из хранилища, однако ваша локальная копия содержит ваши
+              изменения. Либо изменения не пересекаются либо они точно такие
+              же как ваши локальные изменения по-этому Subversion успешно
+              выполнила mer<computeroutput>G</computeroutput>ed —
+              слияние изменений хранилища с файлом.</para>
           </listitem>
         </varlistentry>
 
         <varlistentry>
           <term><computeroutput>C      foo</computeroutput></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>File <filename>foo</filename> received
               <computeroutput>C</computeroutput>onflicting changes from
               the server.  The changes from the server directly overlap
               your own changes to the file.  No need to panic, though.
               This overlap needs to be resolved by a human (you); we
               discuss this situation later in this chapter.</para>
+            @ ENGLISH }}} -->
+            <para>Файл <filename>foo</filename> получил от сервера
+              <computeroutput>C</computeroutput>onflicting —
+              конфликтующие изменения. Изменения с сервера пересекаются с
+              вашими изменениями фала. Однако паниковать не стоит. Это
+              перекрытие нуждается в разрешении человеком (вами); мы обсудим
+              эту ситуацию позже в этой главе.</para>
           </listitem>
         </varlistentry>
 
@@ -580,8 +953,12 @@
     </sect2>
 
     <sect2 id="svn.tour.cycle.edit">
+      <!-- @ENGLISH {{{
       <title>Make Changes to Your Working Copy</title>
-      
+      @ ENGLISH }}} -->
+      <title>Внесение изменений в рабочую копию</title>
+
+      <!-- @ENGLISH {{{
       <para>Now you can get to work and make changes in your
         working copy. It's usually most convenient to decide on a
         particular change (or set of changes) to make, such as writing
@@ -592,45 +969,88 @@
         editing files that are already in Subversion, you may not need
         to use any of these commands until you commit.  Changes you can
         make to your working copy:</para>
-      
+      @ ENGLISH }}} -->
+      <para>Теперю вы можете вносить изменения в рабочую копию. Самый
+        подходящий момент внести нужные изменения (или набор изменений),
+        например, добавление новой возможности, исправление ошибки и т. д.
+        Команды Subversion которыми вы будете здесь пользоваться — это
+        <command>svn add</command>, <command>svn delete</command>,
+        <command>svn copy</command> и <command>svn move</command>.
+        Однако если вы просто редактируете файлы которые уже в Subversion
+        ни одна из этих команд вам не нужна. Изменения которые вы можете
+        сделать в вашей рабочей:</para>
+
       <variablelist>
-        
+
         <varlistentry>
+          <!-- @ENGLISH {{{
           <term>File changes</term>
+          @ ENGLISH }}} -->
+          <term>Изменения файлов</term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>This is the simplest sort of change.  You don't need
               to tell Subversion that you intend to change a file;
               just make your changes.  Subversion will be able to
               automatically detect which files have been
               changed.</para>
+            @ ENGLISH }}} -->
+            <para>Это самый простой вид изменений. Вам не нужно сообщать
+              Subversion о своем намерении изменить файл; просто берите
+              и вносите изменения. Subversion сможет автоматически
+              определить измененные файлы.</para>
           </listitem>
         </varlistentry>
 
         <varlistentry>
+          <!-- @ENGLISH {{{
           <term>Tree changes</term>
+          @ ENGLISH }}} -->
+          <term>Изменения в структуре</term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>You can ask Subversion to <quote>mark</quote> files
               and directories for scheduled removal, addition,
               copying, or moving.  While these changes may take place
               immediately in your working copy, no additions or
               removals will happen in the repository until you commit
               them.</para>
+            @ ENGLISH }}} -->
+            <para>Вы можете попросить Subversion <quote>отметить</quote>
+              файлы и директории для удаления, добавления, копирования или
+              перемещения. Не смотря на то, что эти изменения сразу же
+              отразяться в рабочей копии, ни добавления ни удаления
+              не произойдут в хранилище пока вы их не зафиксируете.</para>
           </listitem>
         </varlistentry>
 
       </variablelist>
-      
+
+      <!-- @ENGLISH {{{
       <para>To make file changes, use your text editor, word
         processor, graphics program, or whatever tool you would
         normally use.  Subversion handles binary files just as easily
         as it handles text files—and just as efficiently
         too.</para>
-      
+      @ ENGLISH }}} -->
+      <para>Для внесения изменений в файлы используете свой текстовый
+        редактор, текстовый процессор, графическую программу или любой
+        другой инструмент который вы обычно используете. Subversion
+        обрабатывает бинарные файлы так же легко как и текстовые -
+        и настолько же эффективно.</para>
+
+      <!-- @ENGLISH {{{
       <para>Here is an overview of the four Subversion subcommands
         that you'll use most often to make tree changes (we'll cover
         <command>svn import</command> and <command>svn mkdir</command>
         later).</para>
+      @ ENGLISH }}} -->
+      <para>Вот обзор четырех подкоманд Subversion которые вы будете
+        использовать наиболее часто при внесении изменений в структуру
+        (команды <command>svn import</command> и <command>svn
+        mkdir</command> мы рассмотрим позже).</para>
 
+      <!-- @ENGLISH {{{
       <warning>
         <para>While you can edit your files with whatever tool you
           like, you shouldn't change the structure of your working
@@ -640,12 +1060,24 @@
           to change the structure of your working copy, and use the
           <command>svn add</command> command to place new files and
           directories under version control.</para> </warning>
-      
+       @ ENGLISH }}} -->
+       <warning>
+         <para>Не смотря на то, что файлы вы можете редактировать
+           как угодно, не следует менять структуру рабочей копии
+           не проинформировав о своих действиях Subversion. Для
+           изменения структуры рабочей копии используйте команды
+           <command>svn copy</command>, <command>svn delete</command>
+           и <command>svn move</command>, а для добавления новых файлов
+           и директорий под контроль версий используйте
+           <command>svn add</command>.</para>
+       </warning>
+
       <variablelist>
-        
+
         <varlistentry>
           <term><command>svn add foo</command></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>Schedule file, directory, or symbolic link
               <filename>foo</filename> to be added to the repository.
               When you next commit, <filename>foo</filename> will
@@ -654,8 +1086,19 @@
               underneath <filename>foo</filename> will be scheduled
               for addition.  If you only want to add
               <filename>foo</filename> itself, pass the
-              <option>--non-recursive</option> (<option>-N</option>)
+              <option>–-non-recursive</option> (<option>-N</option>)
               switch.</para>
+            @ ENGLISH }}} -->
+            <para>Запланировать файл, директорию или символьную ссылку
+              <filename>foo</filename> для добавления в хранилище.
+              При следующей фиксации, <filename>foo</filename> станет
+              компонентом своей родительской директории. Обратите внимание
+              на то, что если <filename>foo</filename> является директорией,
+              то все содержащееся в <filename>foo</filename> будет
+              запланировано для добавления. Если вы хотите добавить
+              отдельно <filename>foo</filename> воспользуйтесь параметром
+              <option>--non-recursive</option>
+              (<option>-N</option>).</para>
 
           </listitem>
         </varlistentry>
@@ -663,6 +1106,7 @@
         <varlistentry>
           <term><command>svn delete foo</command></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>Schedule file, directory, or symbolic link
               <filename>foo</filename> to be deleted from the
               repository.  If <filename>foo</filename> is a file or
@@ -677,12 +1121,27 @@
               back anything you delete by checking out (or updating
               your working copy) a revision earlier than the one in
               which you deleted it.</para></footnote></para>
+            @ ENGLISH }}} -->
+            <para>Запланировать удаление из хранилища файла, директории
+              или символьной ссылки <filename>foo</filename>. Если
+              <filename>foo</filename> является файлом или ссылкой,
+              он сразу же удаляется из вашей рабочей копии. Если
+              <filename>foo</filename> является директорией, она не
+              удаляется, но Subversion запланирует ее удаление.
+              <filename>foo</filename> будет удалена из рабочей копии и
+              хранилища при фиксации изменений.<footnote><para>Конечно,
+              ничего полностью из хранилища не удаляется — удаляется
+              только из <literal>HEAD</literal> хранилища. Вы можете
+              восстановить все, что вы удалили создав рабочую кипию (или
+              обновив существующую) на основе более ранней правки чем та в
+              которой вы удалили элемент.</para></footnote></para>
           </listitem>
         </varlistentry>
 
         <varlistentry>
           <term><command>svn copy foo bar</command></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>Create a new item <filename>bar</filename> as a
               duplicate of <filename>foo</filename>.
               <filename>bar</filename> is automatically scheduled for
@@ -691,12 +1150,22 @@
               recorded (as having originally come from
               <filename>foo</filename>).  <command>svn copy</command>
               does not create intermediate directories.</para>
+            @ ENGLISH }}} -->
+            <para>Создать новый элемент <filename>bar</filename> как
+              копию <filename>foo</filename>. <filename>bar</filename>
+              будет автоматически запланирован для добавления.
+              Когда при следующей фиксации <filename>bar</filename>
+              будет добавлен в хранилище в его истории будет отмечено
+              копирование (то, что первоисточником является
+              <filename>foo</filename>). <command>svn copy</command> не
+              создает промежуточных директорий.</para>
           </listitem>
         </varlistentry>
 
         <varlistentry>
           <term><command>svn move foo bar</command></term>
           <listitem>
+            <!-- @ENGLISH {{{
             <para>This command is exactly the same as running
               <command>svn copy foo bar; svn delete foo</command>.
               That is, <filename>bar</filename> is scheduled for
@@ -704,13 +1173,24 @@
               <filename>foo</filename> is scheduled for removal.
               <command>svn move</command> does not create intermediate
               directories.</para>
+            @ ENGLISH }}} -->
+            <para>Эта команда полностью аналогична выполнению
+              <command>svn copy foo bar; svn delete foo</command>.
+              По-этому, <filename>bar</filename> будет запланирован для
+              добавления как копия <filename>foo</filename>, а
+              <filename>foo</filename> будет запланирорван для удаления.
+              <command>svn move</command> не создает промежуточных
+              директорий.</para>
           </listitem>
         </varlistentry>
 
       </variablelist>
 
       <sidebar>
+        <!-- @ENGLISH {{{
         <title>Changing the Repository Without a Working Copy</title>
+        @ ENGLISH }}} -->
+        <title>Изменение хранилища без участия рабочей копии</title>
 
         <!-- ### pll - Fri 07 Feb 2003 12:55:07                            -->
         <!-- I find this sidebar rather confusing here, since you really   -->
@@ -720,7 +1200,8 @@
         <!-- and which types of commands need URLs, etc.  This should      -->
         <!-- probably be in chapter 2 (around the "Subversion in action"   -->
         <!-- though, so that this sidebar makes more sense.                -->
-        
+
+        <!-- @ENGLISH {{{
         <para>Earlier in this chapter, we said that you have to commit
           any changes that you make in order for the repository to
           reflect these changes. That's not entirely true—there
@@ -731,7 +1212,18 @@
           of <command>svn mkdir</command>, <command>svn
           copy</command>, <command>svn move</command>, and
           <command>svn delete</command> can work with URLs.</para>
+        @ ENGLISH }}} -->
+        <para>Ранее в этой главе мы сказали, что вам необходимо
+          зафиксировать любые изменения для того, что бы они отразились в
+          хранилище. Это не совсем так — <emphasis>существуют</emphasis>
+          некоторые случаи использования, которые сразу же фиксируют в
+          хранилище изменения структуры. Это происходит только тогда
+          когда подкоманда оперирует напрямую с URL вместо рабочей копии.
+          В частности, отдельные применения <command>svn mkdir</command>,
+          <command>svn copy</command>, <command>svn move</command> и
+          <command>svn delete</command> могут работать с URL.</para>
 
+        <!-- @ENGLISH {{{
         <para>URL operations behave in this manner because commands
           that operate on a working copy can use the working copy as a
           sort of <quote>staging area</quote> to set up your changes
@@ -739,6 +1231,15 @@
           operate on URLs don't have this luxury, so when you operate
           directly on a URL, any of the above actions represent an
           immediate commit.</para>
+        @ ENGLISH }}} -->
+        <para>URL операции ведут себя подобным образом из-за того, что
+          команды использующие рабочую копию могут использовать ее
+          как своего рода <quote>сартовую площадку</quote> для
+          устаканивания изменений перед фиксацией их в хранилище. Команды
+          оперирующие URL не могут позволить такой роскоши, по-этому,
+          когда вы работаете напрямую с URL, любое из приведенных выше действий
+          приводит к немедленной фиксации.</para>
+
 
       </sidebar>
 
@@ -746,7 +1247,7 @@
 
     <sect2 id="svn.tour.cycle.examine">
       <title>Examine Your Changes</title>
-      
+
       <para>Once you've finished making changes, you need to commit
         them to the repository, but before you do so, it's usually a
         good idea to take a look at exactly what you've changed.  By
@@ -762,14 +1263,14 @@
         two commands to find out what files have changed in your
         working copy, and then perhaps the third to revert some (or
         all) of those changes.</para>
-      
+
       <!-- pll - Fri 07 Feb 2003 12:55:07                                   -->
       <!-- I find this following paragraph a little unclear.  Mostly for    -->
       <!-- the same reasons as I found the sidebar above unclear.  There    -->
       <!-- hasn't been much discussion of the Subversion architecture, and  -->
       <!-- therefore, nothing has been clearly stated wrt the fact that the -->
       <!-- repository may not be local.                                     -->
-      
+
       <para>Subversion has been optimized to help you with this task,
         and is able to do many things without communicating with the
         repository.  In particular, your working copy contains a
@@ -778,16 +1279,16 @@
         Because of this, Subversion can quickly show you how your
         working files have changed, or even allow you to undo your
         changes without contacting the repository.</para>
-      
+
       <sect3 id="svn.tour.cycle.examine.status">
         <title><command>svn status</command></title>
-        
+
         <para>You'll probably use the <command>svn status</command>
           command more than any other Subversion command.</para>
-        
+
         <sidebar>
           <title>CVS Users: Hold That Update!</title>
-          
+
           <para>You're probably used to using <command>cvs
             update</command> to see what changes you've made to your
             working copy.  <command>svn status</command> will give you
@@ -795,7 +1296,7 @@
             your working copy—without accessing the repository
             or potentially incorporating new changes published by
             other users.</para>
-        
+
           <para>In Subversion, <command>update</command> does just
             that—it updates your working copy with any changes
             committed to the repository since the last time you've
@@ -804,7 +1305,7 @@
             local modifications you've made.</para>
 
         </sidebar>
-        
+
         <para>If you run <command>svn status</command> at the top of
           your working copy with no arguments, it will detect all file
           and tree changes you've made.  Below are examples of
@@ -812,7 +1313,7 @@
           status</command> can return.  (Note that the text following
           <literal>#</literal> is not
           actually printed by <command>svn status</command>.)</para>
-      
+
         <screen>
   L     some_dir            # svn left a lock in the .svn area of some_dir
 M       bar.c               # the content in bar.c has local modifications
@@ -830,13 +1331,13 @@
  C      stuff/loot/glub.c   # file has property conflicts from an update
 R       xyz.c               # file is scheduled for replacement
     S   stuff/squawk        # file or dir has been switched to a branch
-     K  dog.jpg             # file is locked locally; lock-token present 
+     K  dog.jpg             # file is locked locally; lock-token present
      O  cat.jpg             # file is locked in the repository by other user
      B  bird.jpg            # file is locked locally, but lock has been broken
      T  fish.jpg            # file is locked locally, but lock has been stolen
 
 </screen>
-      
+
         <para>In this output format <command>svn status</command>
           prints five columns of characters, followed by several
           whitespace characters, followed by a file or directory name.
@@ -978,7 +1479,7 @@
           properties).  If an <computeroutput>M</computeroutput>
           appears in the second column, then the properties have been
           modified, otherwise a whitespace will be printed.</para>
-        
+
         <para>The third column will only show whitespace or an
           <computeroutput>L</computeroutput> which means that
           Subversion has locked the direcotry's
@@ -990,7 +1491,7 @@
           presumably Subversion was interrupted and the lock needs to
           be cleaned up by running <command>svn cleanup</command>
           (more about that later in this chapter).</para>
-        
+
         <para>The fourth column will only show whitespace or a
           <computeroutput>+</computeroutput> which means that the file
           or directory is scheduled to be added or modified with
@@ -1021,22 +1522,22 @@
         <para>The sixth column shows information about locks, which is
           further explained in <xref
           linkend="svn.advanced.locking"/>.</para>
-        
+
         <para>If you pass a specific path to <command>svn
           status</command>, it gives you information about that item
           alone:</para>
-        
+
         <screen>
 $ svn status stuff/fish.c
 D      stuff/fish.c
 </screen>
-        
+
         <para><command>svn status</command> also has a
           <option>--verbose</option> (<option>-v</option>) switch,
           which will show you the status of <emphasis>every</emphasis>
           item in your working copy, even if it has not been
           changed:</para>
-           
+
         <screen>
 $ svn status --verbose
 M               44        23    sally     README
@@ -1049,7 +1550,7 @@
 A                0         ?     ?        stuff/things/bloo.h
                 44        36    harry     stuff/things/gloo.c
 </screen>
-           
+
         <para>This is the <quote>long form</quote> output of
           <command>svn status</command>.  The first column remains
           the same, but the second column shows the working-revision of
@@ -1064,7 +1565,7 @@
           (<option>-u</option>) switch, which contacts the repository
           and adds information about things that are
           out-of-date:</para>
-      
+
         <screen>
 $ svn status --show-updates --verbose
 M      *        44        23    sally     README
@@ -1074,7 +1575,7 @@
 A                0         ?     ?        stuff/things/bloo.h
 Status against revision:   46
 </screen>
-           
+
         <para>Notice the two asterisks: if you were to run
           <command>svn update</command> at this point, you would
           receive changes to <filename>README</filename>
@@ -1088,7 +1589,7 @@
 
       <sect3 id="svn.tour.cycle.examine.diff">
         <title><command>svn diff</command></title>
-        
+
         <para>Another way to examine your changes is with the
           <command>svn diff</command> command.  You can find out
           <emphasis>exactly</emphasis> how you've modified things by
@@ -1105,13 +1606,13 @@
           might run <command>svn diff --diff-cmd /usr/bin/diff
           --extensions '-bc' foo.c</command>.</para>
           </footnote></para>
-        
+
         <screen>
 $ svn diff
 Index: bar.c
 ===================================================================
---- bar.c	(revision 3)
-+++ bar.c	(working copy)
+--- bar.c (revision 3)
++++ bar.c (working copy)
 @@ -1,7 +1,12 @@
 +#include <sys/types.h>
 +#include <sys/stat.h>
@@ -1127,26 +1628,26 @@
 
 Index: README
 ===================================================================
---- README	(revision 3)
-+++ README	(working copy)
-@@ -193,3 +193,4 @@ 
+--- README  (revision 3)
++++ README  (working copy)
+@@ -193,3 +193,4 @@
 +Note to self:  pick up laundry.
 
 Index: stuff/fish.c
 ===================================================================
---- stuff/fish.c	(revision 1)
-+++ stuff/fish.c	(working copy)
+--- stuff/fish.c  (revision 1)
++++ stuff/fish.c  (working copy)
 -Welcome to the file known as 'fish'.
 -Information on fish will be here soon.
 
 Index: stuff/things/bloo.h
 ===================================================================
---- stuff/things/bloo.h	(revision 8)
-+++ stuff/things/bloo.h	(working copy)
+--- stuff/things/bloo.h (revision 8)
++++ stuff/things/bloo.h (working copy)
 +Here is a new file to describe
 +things about bloo.
 </screen>
-        
+
         <para>The <command>svn diff</command> command produces this
           output by comparing your working files against the cached
           <quote>pristine</quote> copies within the
@@ -1180,15 +1681,15 @@
           that your changes to <filename>README</filename> are a
           mistake; perhaps you accidentally typed that text into the
           wrong file in your editor.</para>
-      
+
         <para>This is a perfect opportunity to use <command>svn
           revert</command>.</para>
-           
+
         <screen>
 $ svn revert README
 Reverted 'README'
 </screen>
-        
+
         <para>Subversion reverts the file to its pre-modified state by
           overwriting it with the cached <quote>pristine</quote> copy
           from the <filename>.svn</filename> area.  But also note that
@@ -1227,10 +1728,10 @@
           control:</para>
 
         <screen>
-$ svn status README 
+$ svn status README
        README
 
-$ svn delete README 
+$ svn delete README
 D         README
 
 $ svn revert README
@@ -1276,11 +1777,11 @@
 
     <sect2 id="svn.tour.cycle.resolve">
       <title>Resolve Conflicts (Merging Others' Changes)</title>
-           
+
       <para>We've already seen how <command>svn status -u</command>
         can predict conflicts.  Suppose you run <command>svn
         update</command> and some interesting things occur:</para>
-      
+
       <screen>
 $ svn update
 U  INSTALL
@@ -1288,7 +1789,7 @@
 C  bar.c
 Updated to revision 46.
 </screen>
-           
+
       <para>The <computeroutput>U</computeroutput> and
         <computeroutput>G</computeroutput> codes are no cause for
         concern; those files cleanly absorbed changes from the
@@ -1300,15 +1801,15 @@
         means that the file had local changes to begin with, but the
         changes coming from the repository didn't overlap with the local
         changes.</para>
-           
+
       <para>But the <computeroutput>C</computeroutput> stands for
         conflict.  This means that the changes from the server overlapped
         with your own, and now you have to manually choose between
         them.</para>
-           
+
       <para>Whenever a conflict occurs, three things typically occur
         to assist you in noticing and resolving that conflict:</para>
-           
+
       <itemizedlist>
 
         <listitem>
@@ -1334,7 +1835,7 @@
             three extra unversioned files in your working copy:</para>
 
           <variablelist>
-            
+
             <varlistentry>
               <term><filename>filename.mine</filename></term>
               <listitem>
@@ -1348,7 +1849,7 @@
                   file.)</para>
               </listitem>
             </varlistentry>
-            
+
             <varlistentry>
               <term><filename>filename.rOLDREV</filename></term>
               <listitem>
@@ -1372,21 +1873,21 @@
             </varlistentry>
 
           </variablelist>
-          
+
           <para>Here <literal>OLDREV</literal> is the revision number
             of the file in your <filename>.svn</filename> directory
             and <literal>NEWREV</literal> is the revision number of
             the repository <literal>HEAD</literal>.</para>
         </listitem>
-        
+
       </itemizedlist>
-      
+
       <para>For example, Sally makes changes to the file
         <filename>sandwich.txt</filename> in the repository.  Harry has
         just changed the file in his working copy and checked it in.
         Sally updates her working copy before checking in and she gets
         a conflict:</para>
-      
+
       <screen>
 $ svn update
 C  sandwich.txt
@@ -1397,7 +1898,7 @@
 sandwich.txt.r1
 sandwich.txt.r2
 </screen>
-      
+
       <para>At this point, Subversion will <emphasis>not</emphasis>
         allow you to commit the file <filename>sandwich.txt</filename>
         until the three temporary files are removed.</para>
@@ -1593,16 +2094,16 @@
         fixed the conflict in your file—once the temporary files
         are removed, Subversion will let you commit the file even if
         it still contains conflict markers.</para>
-      
+
     </sect2>
-    
+
     <sect2 id="svn.tour.cycle.commit">
       <title>Commit Your Changes</title>
-      
+
       <para>Finally!  Your edits are finished, you've merged all
         changes from the server, and you're ready to commit your
         changes to the repository.</para>
-      
+
       <para>The <command>svn commit</command> command sends all of
         your changes to the repository.  When you commit a change, you
         need to supply a <firstterm>log message</firstterm>,
@@ -1611,21 +2112,21 @@
         you may wish to supply it on the command line using the
         <option>--message</option> (or <option>-m</option>)
         option:</para>
-           
+
       <screen>
 $ svn commit --message "Corrected number of cheese slices."
 Sending        sandwich.txt
 Transmitting file data .
 Committed revision 3.
 </screen>
-           
+
       <para>However, if you've been composing your log message as you
         work, you may want to tell Subversion to get the message from
         a file by passing the filename with the
         <option>--file</option> switch:</para>
 
       <screen>
-$ svn commit --file logmsg 
+$ svn commit --file logmsg
 Sending        sandwich.txt
 Transmitting file data .
 Committed revision 4.
@@ -1637,8 +2138,8 @@
         (see the <literal>editor-cmd</literal> section in
         <xref linkend="svn.advanced.confarea.opts.config"/>) for composing a log
         message.</para>
-        
-        
+
+
       <tip>
         <para>If you're in your editor writing a commit message and
           decide that you want to cancel your commit, you can just
@@ -1675,7 +2176,7 @@
         update</command>, deal with any merges or conflicts that
         result, and attempt your commit again.</para>
 
-           
+
       <para>That covers the basic work cycle for using Subversion.
         There are many other features in Subversion that you can use
         to manage your repository and working copy, but you can get by
@@ -1702,7 +2203,7 @@
       However, sometimes you just want to <emphasis>peer
       into</emphasis> the past instead of <emphasis>going
       into</emphasis> the past.</para>
-           
+
     <para>There are several commands that can provide you with
       historical data from the repository:</para>
 
@@ -1755,7 +2256,7 @@
         revision it changed, the time and date of that revision, and,
         if it was provided, the log message that accompanied the
         commit.</para>
-           
+
       <screen>
 $ svn log
 ------------------------------------------------------------------------
@@ -1772,14 +2273,14 @@
 Initial import
 ------------------------------------------------------------------------
 </screen>
-           
+
       <para>Note that the log messages are printed in
         <emphasis>reverse chronological order</emphasis> by default.
         If you wish to see a different range of revisions in a
         particular order, or just a single revision, pass the
         <option>--revision</option> (<option>-r</option>)
         switch:</para>
-           
+
       <screen>
 $ svn log --revision 5:19    # shows logs 5 through 19 in chronological order
 
@@ -1787,21 +2288,21 @@
 
 $ svn log -r 8               # shows log for revision 8
 </screen>
-        
+
       <para>You can also examine the log history of a single file or
         directory.  For example:</para>
-           
+
       <screen>
 $ svn log foo.c
 …
 $ svn log http://foo.com/svn/trunk/code/foo.c
 …
 </screen>
-           
+
       <para>These will display log messages <emphasis>only</emphasis>
         for those revisions in which the working file (or URL)
         changed.</para>
-           
+
       <para>If you want even more information about a file or
         directory, <command>svn log</command> also takes a
         <option>--verbose</option> (<option>-v</option>) switch.
@@ -1828,7 +2329,7 @@
       <sidebar>
         <title>Why Does <command>svn log</command> Give Me an Empty
           Response?</title>
-        
+
         <para>After working with Subversion for a bit, most users will
           come across something like this:</para>
 
@@ -1852,7 +2353,7 @@
           http://svn.collab.net/repos/svn</command>.</para>
 
       </sidebar>
-           
+
     </sect2>
 
     <sect2 id="svn.tour.history.diff">
@@ -1862,7 +2363,7 @@
         before—it displays file differences in unified diff
         format; it was used to show the local modifications made to
         our working copy before committing to the repository.</para>
-      
+
       <para>In fact, it turns out that there are
         <emphasis>three</emphasis> distinct uses of <command>svn
         diff</command>:</para>
@@ -1882,7 +2383,7 @@
         </listitem>
 
       </itemizedlist>
-      
+
       <sect3 id="svn.tour.history.diff.local">
         <title>Examining Local Changes</title>
 
@@ -1890,13 +2391,13 @@
           no switches will compare your working files to the cached
           <quote>pristine</quote> copies in
           the <filename>.svn</filename> area:</para>
-        
+
         <screen>
 $ svn diff
 Index: rules.txt
 ===================================================================
---- rules.txt	(revision 3)
-+++ rules.txt	(working copy)
+--- rules.txt (revision 3)
++++ rules.txt (working copy)
 @@ -1,4 +1,5 @@
  Be kind to others
  Freedom = Responsibility
@@ -1906,7 +2407,7 @@
 +Listen when others are speaking
 $
 </screen>
-        
+
       </sect3>
 
       <sect3 id="svn.tour.history.diff.wcrepos">
@@ -1916,13 +2417,13 @@
           (<option>-r</option>) number is passed, then your
           working copy is compared to the specified revision in the
           repository.</para>
-          
+
         <screen>
-$ svn diff --revision 3 rules.txt 
+$ svn diff --revision 3 rules.txt
 Index: rules.txt
 ===================================================================
---- rules.txt	(revision 3)
-+++ rules.txt	(working copy)
+--- rules.txt (revision 3)
++++ rules.txt (working copy)
 @@ -1,4 +1,5 @@
  Be kind to others
  Freedom = Responsibility
@@ -1932,23 +2433,23 @@
 +Listen when others are speaking
 $
 </screen>
-          
+
       </sect3>
 
       <sect3 id="svn.tour.history.diff.reposrepos">
         <title>Comparing Repository to Repository</title>
-        
+
         <para>If two revision numbers, separated by a colon, are
           passed via <option>--revision</option>
           (<option>-r</option>), then the two revisions are directly
           compared.</para>
-          
+
         <screen>
-$ svn diff --revision 2:3 rules.txt 
+$ svn diff --revision 2:3 rules.txt
 Index: rules.txt
 ===================================================================
---- rules.txt	(revision 2)
-+++ rules.txt	(revision 3)
+--- rules.txt (revision 2)
++++ rules.txt (revision 3)
 @@ -1,4 +1,4 @@
  Be kind to others
 -Freedom = Chocolate Ice Cream
@@ -1957,7 +2458,7 @@
  Chew with your mouth open
 $
 </screen>
-          
+
         <para>Not only can you use <command>svn diff</command> to
           compare files in your working copy to the repository, but if
           you supply a URL argument, you can examine the differences
@@ -1965,7 +2466,7 @@
           working copy.  This is especially useful if you wish to
           inspect changes in a file when you don't have a working copy
           on your local machine:</para>
-           
+
         <screen>
 $ svn diff --revision 4:5 http://svn.red-bean.com/repos/example/trunk/text/rules.txt
 …
@@ -1984,7 +2485,7 @@
         <command>svn cat</command>:</para>
 
       <screen>
-$ svn cat --revision 2 rules.txt 
+$ svn cat --revision 2 rules.txt
 Be kind to others
 Freedom = Chocolate Ice Cream
 Everything in moderation
@@ -2021,11 +2522,11 @@
 
     <sect2 id="svn.tour.history.list">
       <title><command>svn list</command></title>
-      
+
       <para>The <command>svn list</command> command shows you what
         files are in a repository directory without actually
         downloading the files to your local machine:</para>
-      
+
       <screen>
 $ svn list http://svn.collab.net/repos/svn
 README
@@ -2052,7 +2553,7 @@
         directory was last modified, the user who modified it, the size
         if it is a file, the date it was last modified, and the item's
         name.</para>
- 
+
     </sect2>
 
     <sect2 id="svn.tour.history.finalword">
@@ -2114,7 +2615,7 @@
       <screen>
 $ svn status
   L    somedir
-M      somedir/foo.c 
+M      somedir/foo.c
 
 $ svn cleanup
 $ svn status
@@ -2168,7 +2669,7 @@
   <!-- ================================================================= -->
   <sect1 id="svn.tour.summary">
     <title>Summary</title>
-        
+
       <para>Now we've covered most of the Subversion client commands.
         Notable exceptions are those dealing with branching and
         merging (see <xref linkend="svn.branchmerge"/>) and properties (see
@@ -2183,8 +2684,8 @@
 </chapter>
 
 <!--
-local variables: 
+local variables:
 sgml-parent-document: ("book.xml" "chapter")
 end:
 vim: tw=78:ft=svnbook
--->
+-->
\ No newline at end of file



More information about the svnbook-dev mailing list