[svnbook commit] r3275 - trunk/src/ru/book

dmitriy noreply at red-bean.com
Sun Aug 17 15:58:39 CDT 2008


Author: dmitriy
Date: Sun Aug 17 15:58:39 2008
New Revision: 3275

Log:
 * ru/book/ch-basic-usage.xml: unification of used terminology and some fixes of stylistics
 * ru/book/ch-advanced-topics.xml: new translation for some parts and same fixes as above

The author of patch is Andrey Kolchugin (kolas1 at mail.ru)

Modified:
   trunk/src/ru/book/ch-advanced-topics.xml
   trunk/src/ru/book/ch-basic-usage.xml

Modified: trunk/src/ru/book/ch-advanced-topics.xml
==============================================================================
--- trunk/src/ru/book/ch-advanced-topics.xml	(original)
+++ trunk/src/ru/book/ch-advanced-topics.xml	Sun Aug 17 15:58:39 2008
@@ -20,13 +20,13 @@
     unconsciously.  For all intents and purposes, you are ready to
     use Subversion in a typical environment.</para>
   @ENGLISH }}} -->
-  <para>Если эту книгу вы читали главу за главой, от начала до
-    конца, то к настоящему моменту должны иметь достаточно знаний
-    для использования Subversion клиента при выполнении типичных
-    управлению версиями операций. Вы понимаете, как создавать
-    рабочую копию. Знаете как используя команды <command>svn
+  <para>Если вы читали эту книгу последовательно, глава за главой, 
+    то к настоящему моменту должны иметь достаточно знаний
+    для использования Subversion-клиента при выполнении типовых
+    операций управления версиями. Вы умеете создавать
+    рабочую копию, знаете, как с помощью команд <command>svn
     commit</command> и <command>svn update</command> отправлять и
-    получать изменения. Возможно у вас уже даже выработался рефлекс
+    получать изменения. Возможно, у вас уже даже выработался рефлекс
     бессознательного запуска <command>svn status</command>. Вы готовы
     применять Subversion в большинстве возможных типовых
     ситуаций.</para>
@@ -53,20 +53,25 @@
     consumed this chapter, you'll be a Subversion power-user!</para>
   @ENGLISH }}} -->
   <para>Эта глава рассказывает о тех возможностях Subversion, которые,
-    не смотря на свою важность, не используются в обычном рутинном рабочем
-    цикле. Перед чтением этой главы, необходимо хорошо представлять
+    несмотря на свою важность, не используются в типичном ежедневном рабочем
+    цикле. Перед чтением этой главы необходимо хорошо представлять
     механизмы версионированния файлов и директорий в Subversion.
-    Если вы этого не знаете, пред тем как продолжить, вам необходимо
-    прочитать <xref linkend="svn.basic" /> и <xref linkend="svn.tour" />.
-    После того как вы овладеете основами и примами, рассмотренными в этой
-    главе, вы станете продвинутым пользователем Subversion!</para>
+    Если вы этого не знаете, прочитайте сначала <xref linkend="svn.basic" /> 
+    и <xref linkend="svn.tour" />.
+    После того как вы овладеете основами и дополнительно изучите приемы, 
+    рассмотренные в этой главе, вы станете продвинутым пользователем 
+    Subversion!</para>
 
   <!-- ================================================================= -->
   <!-- ================================================================= -->
   <!-- ================================================================= -->
   <sect1 id="svn.tour.revs.specifiers">
+  <!-- @ENGLISH {{{
     <title>Revision Specifiers</title>
+  @ENGLISH }}} -->
+    <title>Способы обозначения правок</title>
 
+  <!-- @ENGLISH {{{
     <para>As you saw in <xref linkend="svn.tour.revs" />, revision
       numbers in Subversion are pretty straightforward—integers
       that keep getting larger as you commit more changes to your
@@ -80,15 +85,39 @@
       email, in the output of some other Subversion operation, or in
       some other context that would yield meaning to that particular
       number.</para>
+  @ENGLISH }}} -->
+    <para>Как вы уже заметили в <xref linkend="svn.tour.revs" />, 
+      номера правок в Subversion — это не более чем целые числа,
+      монотонно возрастающие при фиксации очередных изменений 
+      версионированных данных. Пройдет совсем немного времени, и вы больше
+      не сможете точно вспомнить, что произошло в каждой из правок.
+      К счастью, типичная технология работы с Subversion не часто 
+      предполагает указание вами произвольных правок, к которым следует 
+      применить ту или иную операцию Subversion. 
+      Для операций, которые требуют <emphasis>обязательной</emphasis> 
+      ссылки на конкретную правку, чаще всего указывают номер правки,
+      который известен из сообщения о фиксации, вывода некоторых других 
+      операций Subversion или из каких-либо других обстоятельств,
+      которые могли бы дать этот конкретный номер.</para>
+
 
+  <!-- @ENGLISH {{{
     <para>But occasionally, you need to pinpoint a moment in time for
       which you don't already have a revision number memorized or
       handy.  So besides the integer revision numbers,
       <command>svn</command> allows as input some additional forms of
       revision specifiers—revision keywords, and revision
       dates.</para>
+  @ENGLISH }}} -->
+    <para>Однако, иногда у вас может возникнуть необходимость сослаться
+      на момент времени, для которого у вас уже не осталось в памяти 
+      или в записях точного номера правки. Поэтому, кроме целочисленных
+      номеров правок, <command>svn</command> позволяет использовать
+      дополнительные формы обозначения правок — ключевые 
+      слова и даты правок.</para>
 
     <note>
+  <!-- @ENGLISH {{{
       <para>The various forms of Subversion revision specifiers can be
         mixed and matched when used to specify revision ranges.  For
         example, you can use <option>-r
@@ -100,17 +129,39 @@
         on.  The individual revision specifiers are independently
         evaluated, so you can put whatever you want on the opposite
         sides of that colon.</para>
+  @ENGLISH }}} -->
+      <para>При указании диапазонов правок можно смешивать различные 
+        способы их обозначения, допустимые в Subversion.  Например, вы 
+        можете использовать <option>-r
+        <replaceable>REV1</replaceable>:<replaceable>REV2</replaceable></option>,
+        где <replaceable>REV1</replaceable> — это ключевое слово, 
+        а <replaceable>REV2</replaceable> — обычный номер правки, или
+        где <replaceable>REV1</replaceable> — дата, а 
+        <replaceable>REV2</replaceable> — ключевое слово, и так далее.  
+        Каждое обозначение ревизии будет оцениваться независимо друг от друга, 
+        поэтому вы можете указать по другую сторону от двоеточия что 
+        угодно.</para>
     </note>
     
     <!-- =============================================================== -->
     <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>
 
       <variablelist>
 
@@ -137,7 +188,7 @@
             @ENGLISH }}} -->
             <para>Номер правки элемента рабочей копии. Если элемент
               редактировался, то <quote>BASE версия</quote> соответствует тому,
-              как элемент выглядел до редактирования.</para>
+              как выглядел этот элемент до внесения локальных изменений.</para>
           </listitem>
         </varlistentry>
 
@@ -148,7 +199,7 @@
             <para>The most recent revision prior to, or equal to,
               <literal>BASE</literal>, in which an item changed.</para>
             @ENGLISH }}} -->
-            <para>Правка, в которой элемент последний раз редактировался
+            <para>Правка, в которой элемент последний раз изменялся
               (предшествующая либо равная <literal>BASE</literal>).</para>
           </listitem>
         </varlistentry>
@@ -161,14 +212,15 @@
               the last revision in which an item changed.
               (Technically, <literal>COMMITTED</literal> - 1.)</para>
             @ENGLISH }}} -->
-            <para>Правка, <emphasis>предшествующая</emphasis> последней
-              правке, в которой элемент был изменен. (Технически,
+            <para>Правка, непосредственно <emphasis>предшествующая</emphasis> 
+              последней правке, в которой элемент был изменен. (проще говоря,
               <literal>COMMITTED</literal> - 1.)</para>
           </listitem>
         </varlistentry>
 
       </variablelist>
 
+  <!-- @ENGLISH {{{
       <para>As can be derived from their descriptions, the
         <literal>PREV</literal>, <literal>BASE</literal>, and
         <literal>COMMITTED</literal> revision keywords are used only
@@ -176,6 +228,13 @@
         to repository URLs.  <literal>HEAD</literal>, on the other
         hand, can be used in conjuction with both of these path
         types.</para>
+  @ENGLISH }}} -->
+      <para>Из данного описания можно сделать очевидный вывод о том, что
+        ключевые слова <literal>PREV</literal>, <literal>BASE</literal>, 
+        и <literal>COMMITTED</literal> могут использоваться только при ссылках 
+        на пути в рабочей копии; они не применимы к URL-адресам хранилища.
+        Напротив, ключевое слово <literal>HEAD</literal> можно использовать
+        совместно с обоими типами путей</para>
       
       <!-- @ENGLISH {{{
       <para>Here are some examples of revision keywords in
@@ -189,20 +248,20 @@
 <!-- @ENGLISH {{{
 # shows the last change committed to foo.c
 @ENGLISH }}} -->
-# показать последнее изменение зафиксированное для foo.c
+# показать последнее изменение, зафиксированное для 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 changes) to the latest version
 # in the repository
 @ENGLISH }}} -->
-# сравнить ваш рабочый файл (с учетом локальных изменений)
+# сравнить ваш рабочий файл (с учетом локальных изменений)
 # с последней правкой в хранилище
 
 $ svn diff --revision BASE:HEAD foo.c
@@ -223,11 +282,14 @@
 <!-- @ENGLISH {{{
 # rewinds the last change on foo.c, decreasing foo.c's working revision
 @ENGLISH }}} -->
-# отменить последние изменения в foo.c, рабочая правка foo.c понижается
+# отменить последние изменения в foo.c, понизив рабочую правку foo.c
       
 $ svn diff -r BASE:14 foo.c
+<!-- @ENGLISH {{{
 # compares the unmodified version of foo.c with the way foo.c looked
 # in revision 14
+ at ENGLISH }}} -->
+# сравнить неизмененную версию foo.c и версию foo.c в правке 14
 </screen>
       
     </sect2>
@@ -240,16 +302,28 @@
       @ENGLISH }}} -->
       <title>Даты правок</title>
       
+<!-- @ENGLISH {{{
       <para>Revision numbers reveal nothing about the world outside
         the version control system, but sometimes you need to
         correlate a moment in real time with a moment in version
-        history.  To facilitate this, the <option>--revision</option>
+        history.  To facilitate this, the <option>-ﳢ-revision</option>
         option can also accept as input date specifiers wrapped in
         curly braces (<literal>{</literal> and <literal>}</literal>).
         Subversion accepts the standard ISO-8601 date and time
         formats, plus a few others.  Here are some examples.
         (Remember to use quotes around any date that contains
         spaces.)</para>
+ at ENGLISH }}} -->
+      <para>Номера правок не несут никакой информации об окружающем мире
+        за пределами системы управления версиями, тогда как вам иногда 
+        требуется сопоставить момент времени в реальной жизни
+        с моментом в истории версий. Чтобы помочь вам в этом, опция
+        <option>--revision</option> допускает указание на входе даты, 
+        заключенной в фигурные скобки (<literal>{</literal> и 
+        <literal>}</literal>). Subversion принимает дату и время в формате,
+        соответствующем стандарту ISO-8601, а также в некоторых других.
+        Ниже приведено несколько примеров. (Не забывайте брать в кавычки
+        любые даты, содержащие пробелы.)</para>
 
       <screen>
 $ svn checkout -r {2006-02-17}
@@ -266,10 +340,15 @@
 …
 </screen>
       
+<!-- @ENGLISH {{{
       <para>When you specify a date, Subversion resolves that date to
         the most recent revision of the repository as of that date,
         and then continues to operate against that resolved revision
         number:</para>
+ at ENGLISH }}} -->
+      <para>Когда вы указываете дату, Subversion находит в хранилище правку, 
+        наиболее близкую к этой дате, после чего продолжает работу с 
+        вычисленным номером правки. </para>
 
       <screen>
 $ svn log -r {2006-11-28}
@@ -282,7 +361,7 @@
         <!-- @ENGLISH {{{
         <title>Is Subversion a Day Early?</title>
         @ENGLISH }}} -->
-        <title>Is Subversion a Day Early?</title>
+        <title>Почему Subversion выдает правку за предыдущий день?</title>
 
         <!-- @ENGLISH {{{
         <para>If you specify a single date as a revision without
@@ -298,16 +377,16 @@
           00:00:00, so looking for the most recent revision won't
           return anything on the day of the 27th.</para>
         @ENGLISH }}} -->
-        <para>Указав при обращении к правке только дату, без указания
-          времени (например, <literal>2006-11-27</literal>), возможно
-          вы подумаете, что Subversion выдаст вам последнюю правку за 27
-          ноября. А вместо этого можете получить правку за 26 число или
+        <para>Указав при обращении к правке только дату, без уточнения
+          времени (например, <literal>2006-11-27</literal>), вы, 
+          возможно, подумаете, что Subversion выдаст вам последнюю правку за 
+          27 ноября. Однако, вместо этого вы можете получить правку за 26 число или
           даже более раннюю. Помните, что Subversion будет искать
           <emphasis>наиболее отвечающую</emphasis> указанной вами дате
-          правку хранилища. Если вы укажите дату без указания времени,
+          правку хранилища. Если вы укажете дату без уточнения времени,
           например <literal>2006-11-27</literal>, Subversion примет за
-          временную метку 00:00:00 и таким образом поиск ближайшей к 27
-          числу ревизии не даст ничего относящегося к 27 ноября.</para>
+          временную метку 00:00:00, и таким образом поиск ближайшей к 27
+          числу ревизии не даст ничего, относящегося к 27 ноября.</para>
 
         <!-- @ENGLISH {{{
         <para>If you want to include the 27th in your search, you can
@@ -335,6 +414,7 @@
 </screen>
         
       <warning>
+<!-- @ENGLISH {{{
         <para>Since the timestamp of a revision is stored as an
           unversioned, modifiable property of the revision (see <xref
           linkend="svn.advanced.props" />, revision timestamps can be
@@ -342,6 +422,14 @@
           chronology, or even removed altogether.  This will wreak
           havoc on the internal date-to-revision conversion that
           Subversion performs.</para>
+ at ENGLISH }}} -->
+        <para>Поскольку временные метки правок сохраняются как 
+          их неверсионированные, изменяемые свойства (см. <xref
+          linkend="svn.advanced.props" /> ), временные метки можно
+          легко изменить так, чтобы они отражали любое искажение
+          истинной хронологии, или даже удалить совсем.  Это может привести
+          к неожиданным результатам при внутреннем преобразовании
+          дат в номера правок, выполняемом Subversion.</para>
       </warning>
         
     </sect2>
@@ -354,16 +442,31 @@
   <sect1 id="svn.advanced.props">
     <!-- @ENGLISH {{{
     <title>Properties</title>
+    @ENGLISH }}} -->
+    <title>Свойства</title>
 
+<!-- @ENGLISH {{{
     <para>We've already covered in detail how Subversion stores and
       retrieves various versions of files and directories in its
       repository.  Whole chapters have been devoted to this most
       fundamental piece of functionality provided by the tool.  And
       if the versioning support stopped there, Subversion would still
       be complete from a version control perspective.</para>
+ at ENGLISH }}} -->
+    <para>Мы уже подробно рассмотрели, каким образом Subversion сохраняет 
+      и извлекает различные версии файлов и каталогов из хранилища. 
+      Несколько глав было посвящено этой самой фундаментальной части 
+      функциональных возможностей данного инструмента. И даже если бы
+      поддержка версионирования ограничивалась исключительно этим, 
+      Subversion все равно был бы полноценным средством управления 
+      версиями.</para>
 
+<!-- @ENGLISH {{{
     <para>But it doesn't stop there.</para>
+ at ENGLISH }}} -->
+    <para>Однако Subversion этим не ограничивается.</para>
 
+<!-- @ENGLISH {{{
     <para>In addition to versioning your directories and files,
       Subversion provides interfaces for adding, modifying, and
       removing versioned metadata on each of your versioned
@@ -380,33 +483,23 @@
       sending and receiving of property changes occurs as part of your
       typical commit and update operations—you don't have to
       change your basic processes to accomodate them.</para>
-    @ENGLISH }}} -->
-    <title>Свойства</title>
-
-    <para>Мы уже рассмотрели как Subversion сохраняет и получает
-      разные версии файлов и директорий из хранилища. Целые главы были
-      посвящены этой самой фундаментальной части функциональных
-      возможностей этого инструмента. И если поддержка версионирования
-      этим ограничится, Subversion все равно останется полноценным
-      инструментом с точки зрения управления версиями.</para>
-      
-    <para>Однако версионирование этим не ограничивается.</para>
-
-    <para>Дополнительно к версионированнию директорий и файлов,
-      Subversion предоставляет для каждой версионированной директории
+ at ENGLISH }}} -->
+    <para>Дополнительно к версионированнию каталогов и файлов,
+      Subversion предоставляет для каждого версионированного каталога
       и файла интерфейс для добавления, изменения и удаления
-      версионированных метаданных. К этим метаданным мы обращаемся как
+      версионированных метаданных. Мы обращаемся к этим метаданным как
       к <firstterm>свойствам</firstterm>, присоединенным к каждому
       элементу рабочей копии, которые можно представить
       в виде таблицы с двумя столбцами, которая сопоставляет
       имена свойств соответствующим значениям. Вообще, имена
-      и значения свойств могут быть тем, чем вы хотите чтобы они были,
+      и значения свойств могут быть чем угодно,
       за исключением того, что имена должны быть читаемым текстом.
-      И лучшим из всего является то, что они тоже версионированы
-      также как и текстовое содержимое файлов. Можно также просто как и
-      для текстовых изменений изменять, фиксировать и отменять изменения
-      свойств. Отправка и получение измененных свойств происходит точно
-      так же как и обычные фиксации и обновления — для этого нет
+      Самое главное — то, что свойства версионированы точно
+      так же, как и текстовое содержимое файлов. Можно изменять, фиксировать
+      или возвращать изменения свойств в исходное состояние так же легко,
+      как и в случае изменения содержимого файлов.
+      Отправка и получение измененных свойств происходит точно
+      так же, как и обычные фиксации и обновления — для этого нет
       необходимости менять обычный порядок действий.</para>
 
     <!-- @ENGLISH {{{
@@ -420,15 +513,17 @@
       delete, a revision property, there's no way within the scope of
       Subversion's functionality to recover the previous value.</para>
       @ENGLISH }}} -->
-    <para>Подобные приведенным выше, свойства используются и Subversion.
-      Так же как и произвольные имена свойств и соответствующие им значения,
-      имеются у файлов и директорий, каждая правка может иметь
-      произвольные свойства, присоединенные к ней. С теми же исключениями
-      — читаемое имя и любое бинарное значение. Главное отличие в том,
-      что свойства правок не версионируются. Другими словами, если изменить
-      значение свойства правки или удалить такое свойство, у Subversion нет
-      возможностей для восстановления предыдущего значения.</para>
+    <para>Свойства, аналогичные тем, что показаны выше, используются 
+      Subversion и кое-где еще.
+      Произвольные свойства и соответствующие им значения могут иметь не 
+      только файлы и каталоги, но и правки. С теми же ограничениями
+      — читаемым именем и любым бинарным значением. Главное отличие 
+      заключается в том, что свойства правок не версионируются. 
+      Другими словами, если изменить
+      значение свойства правки или удалить такое свойство, Subversion не
+      сможет восстановить предыдущее значение.</para>
 
+    <!-- @ENGLISH {{{
     <para>Subversion has no particular policy regarding the use of
       properties.  It asks only that you not use property names that
       begin with the prefix <literal>svn:</literal>.  That's the
@@ -444,6 +539,20 @@
       more general topics to which they are related.  For an
       exhaustive list of Subversion's pre-defined properties, see
       <xref linkend="svn.ref.svnprops"/>.</para>
+    @ENGLISH }}} -->
+    <para>В Subversion нет жестко определенных правил использования
+      свойств.  Она требует только того, чтобы вы не использовали
+      имена свойств, начинающиеся с префикса <literal>svn:</literal>.  
+      Дело в том, что это пространство имен закреплено для служебного
+      использования.  Subversion действительно использует свойства, как
+      версионированные, так и неверсионированные. Ряд версионированных
+      свойств играет особую роль при поиске файлов и каталогов,
+      или хранит определенную информацию о правках, в которых они найдены.
+      Ряд свойств правок автоматически присоединяется к правкам в процессе
+      фиксации, и несет информацию о правке. Большинство таких свойств
+      упоминаются в этой или других главах при обсуждении более обших тем,
+      к которым они относятся. Исчерпывающий список предопределенных свойств
+      Subversion's приводится в <xref linkend="svn.ref.svnprops"/>.</para>
 
     <!-- @ENGLISH {{{
     <para>In this section, we will examine the utility—both to
@@ -457,9 +566,9 @@
     <para>В этом разделе мы рассмотрим полезность — как для
       пользователя, так и для самой Subversion — поддержки
       свойств. Вы узнаете о командах <command>svn</command>, относящихся к
-      свойствам и том как модификация свойств влияет на привычный рабочий
+      свойствам, и о том как изменение свойств влияет на привычный рабочий
       цикл. Надеемся, вы убедитесь в том, что свойства в Subversion
-      расширяют возможности контроля версий.</para>
+      расширяют возможности управления версиями.</para>
 
     <!-- =============================================================== -->
     <sect2 id="svn.advanced.props.why">
@@ -468,6 +577,7 @@
       @ENGLISH }}} -->
       <title>Зачем нужны свойства?</title>
 
+      <!-- @ENGLISH {{{
       <para>Just as Subversion uses properties to store extra
         information about the files, directories, and revisions that
         it contains, you might also find properties to be of similar
@@ -476,6 +586,16 @@
         Subversion that you use, might find utility in having a place
         close to your versioned data to hang custom metadata about
         that data.</para>
+      @ENGLISH }}} -->
+      <para>Так же как Subversion использует свойства для сохранения
+        дополнительной информации о файлах, каталогах и правках, 
+        содержащихся в хранилище, вы можете найти им аналогичное 
+        применение. Ряд регламентов использования Subversion, которых 
+        вы придерживаетесь, или, возможно, некоторые дополнительные 
+        инструменты, используемые вами при работе с Subversion,
+        могут найти полезным наличие места рядом с версионированными 
+        данными, в котором можно хранить пользовательские метаданные
+        об этих данных.</para>
 
       <!-- @ENGLISH {{{
       <para>Say you wish to design a website that houses many digital
@@ -485,7 +605,16 @@
         can be quite large, so as is common with sites of this nature,
         you want to provide smaller thumbnail images to your site
         visitors.</para>
+      @ENGLISH }}} -->
+      <para>Скажем, вы хотите разработать веб-сайт, содержащий много
+        цифровых фотографий и показывающий их с подписями и датой.
+        Набор этих фотографий постоянно изменяется, поэтому вы хотите
+        по возможности максимально автоматизировать этот сайт. Фотографии
+        могут быть большого размера и, как обычно делают на таких
+        сайтах, для своих посетителей вам будет необходимо создавать
+        миниатюры изображений.</para>
 
+      <!-- @ENGLISH {{{
       <para>Now, you can get this functionality using traditional
         files.  That is, you can have your
         <filename>image123.jpg</filename> and an
@@ -498,24 +627,16 @@
         is that your collection of files grows in multiples with each
         new photo added to the site.</para>
       @ENGLISH }}} -->
-      <para>Скажем, вы хотите разработать веб-сайт, содержащий много
-        цифровых фотографий и показывающий их с подписью и датой.
-        Набор этих фотографий постоянно изменяется и вы захотите
-        по возможности максимально автоматизировать этот сайт. Фотографии
-        могут быть большого размера и как обычно делают на таких
-        сайтах, для своих посетителей вам будет необходимо показывать
-        миниатюры изображений.</para>
-
       <para>Сделать это вы можете с помощью обычных
-        файлов. То есть рядом, в директории, вы можете иметь файлы
+        файлов. То есть рядом, в каталоге, вы можете иметь файлы
         <filename>image123.jpg</filename> и
-        <filename>image123-thumbnail.jpg</filename>. Либо если вам необходимо
-        сохранить то-же имя файла, миниатюры должны будут находиться в
-        отдельной директории, например, так
-        <filename>thumbnails/image123.jpg</filename>. Подобным-же образом,
+        <filename>image123-thumbnail.jpg</filename>. Либо, если вам необходимо
+        сохранить то же имя файла, миниатюры будут находиться в
+        отдельном каталоге (например, 
+        <filename>thumbnails/image123.jpg</filename>). Таким же образом,
         отдельно от основного графического файла, можно хранить описание и
-        дату. Проблема здесь в том, что дерево файлов будет многократно 
-        увеличиваться при каждом добавлении на сайт фотографии.</para>
+        дату. Проблема заключается в том, что дерево файлов будет сильно
+        разрастаться при каждом добавлении фотографии на сайт.</para>
 
       <!-- @ENGLISH {{{
       <para>Now consider the same website deployed in a way that makes
@@ -534,8 +655,8 @@
         having to read an index file or play path manipulation
         games.</para>
       @ENGLISH }}} -->
-      <para>Представим эту же ситуацию с веб сайтом, но при использовании
-        Subversion-свойств файлов. Допустим, имеется файл 
+      <para>Представим, как можно решить ту же задачу с веб-сайтом 
+        при использовании Subversion-свойств файлов. Допустим, имеется файл 
         <filename>image123.jpg</filename> и у этого файла установлено свойство
         <literal>caption</literal>, <literal>datestamp</literal> и даже
         <literal>thumbnail</literal>. В этом случае рабочая копия выглядит
@@ -546,9 +667,10 @@
         Subversion — см. <xref
         linkend="svn.developer.usingapi.otherlangs" />) для получения
         дополнительной, необходимой для показа на сайте информации,
-        не занимаясь чтением индексного файла или играми с путями
-        файлов.</para>
+        не занимаясь чтением индексного файла или манипуляциями с 
+        путями.</para>
 
+      <!-- @ENGLISH {{{
       <para>Custom revision properties are also frequently used.  One
         common such use is a property whose value contains an issue
         tracker ID with which the revision is associated, perhaps
@@ -559,18 +681,43 @@
         if there's, say, a <literal>test-results</literal> property on
         that revision with a value <literal>all passing</literal>,
         that's meaningful information to have.</para>
+      @ENGLISH }}} -->
+      <para>Пользовательские свойства правок используются не менее часто.
+        Одним из типичных примеров использования является свойство, чьим
+        значением служит ID записи в трекере, с которой сопоставлена данная 
+        правка — например, потому что внесенные в правке изменения 
+        исправляют ошибку, занесенную в трекере в запись с таким ID.
+        Другие варианты использования включают задание правке более 
+        понятного имени — очень не легко запомнить, что правка 1935 
+        полностью протестирована. Если же, скажем, задать свойству
+        <literal>результаты тестирования</literal> в этой правке значение 
+        <literal>пройдены все тесты</literal>, вы получите
+        абсолютно четкую информацию.</para>
 
       <sidebar>
+      <!-- @ENGLISH {{{
         <title>Searchability (or, Why <emphasis>Not</emphasis>
           Properties)</title>
+      @ENGLISH }}} -->
+        <title>Эффективность поиска (или Что <emphasis>препятствует</emphasis>
+          использованию свойств)</title>
 
+      <!-- @ENGLISH {{{
         <para>For all their utility, Subversion properties—or,
           more accurately, the available interfaces to them—have
           a major shortcoming which diminishes their practicality.
           While it is a simple matter to set a custom property,
           <emphasis>finding</emphasis> that property later is whole
           different ball of wax.</para>
+      @ENGLISH }}} -->
+        <para>При всей своей полезности, свойства Subversion — или,
+          точнее, доступные интерфейсы обращения к ним — имеют
+          большой недостаток, снижающий их практическую ценность.
+          Все дело в том, что хотя пользовательское свойство очень легко 
+          задать, <emphasis>поиск</emphasis> этого свойства впоследствии
+          может стать большой ложкой дегтя.</para>
 
+      <!-- @ENGLISH {{{
         <para>Trying to locate a custom revision property generally
           involves performing a linear walk across all the revisions
           of the repository, asking of each revision, "Do you have the
@@ -583,7 +730,21 @@
           likelihood of success, especially if the scope of your
           search would require a working copy from the root of your
           repository.</para>
+      @ENGLISH }}} -->
+        <para>Попытка обратиться к пользовательскому свойств правки
+          обычно приводит к выполнению линейного просмотра всех правок 
+          хранилища, при этом каждая правка опрашивается: "Есть ли у тебя
+          свойство, которое я ищу?" Попытка найти пользовательское 
+          версионированное свойство также оказывается затратной, и часто
+          приводит к рекурсивному выполнению <command>svn propget</command> 
+          по всей рабочей копии.  В вашей ситуации это, возможно, окажется
+          не таким плохим вариантом, как линейный просмотр всех правок.
+          Однако, определенно, это оставит желать лучшего как с точки зрения
+          производительности, так и с точки зрения вероятности успеха,
+          особенно если поиск потребует получения рабочей копии
+          корневой папки хранилища.</para>
 
+      <!-- @ENGLISH {{{
         <para>For this reason, you might choose—especially in
           the revision property use-case—to simply add your
           metadata to the revision's log message, using some
@@ -591,6 +752,15 @@
           formatting that is designed to be quickly parsed from the
           output of <command>svn log</command>.  It is quite common to
           see in Subversion log messages the likes of:</para>
+      @ENGLISH }}} -->
+        <para>По этой причине вам стоит подумать над тем (в особенности,
+          в случае со свойствами правок), чтобы просто добавить ваши 
+          метаданные в лог-сообщение правки, придерживаясь при этом
+          некоторого заранее оговоренного (и, возможно, программно 
+          поддерживаемого) форматирования, допускающего впоследствии
+          легкий разбор и анализ вывода команды <command>svn log</command>.
+          В Subversion почти всегла можно увидеть такие типичные 
+          лог-сообщения:</para>
 
         <programlisting>
 Issue(s): IZ2376, IZ1919
@@ -600,10 +770,17 @@
 …
 </programlisting>
 
+      <!-- @ENGLISH {{{
         <para>But here again lies some misfortune.  Subversion doesn't
           yet provide a log message templating mechanism, which would
           go a long way toward helping users be consistent with the
           formatting of their log-embedded revision metadata.</para>
+      @ENGLISH }}} -->
+        <para>Но и здесь вас поджидает одна неприятность.  Subversion пока 
+          еще не обеспечивает механизм задания шаблонов для лог-сообщений,
+          поэтому вам придется довольно долго помогать пользователям, 
+          разъясняя, как сделать форматирование сообщений совместимым
+          с внедренными в лог-сообщение метаданными правки.</para>
 
       </sidebar>
 
@@ -613,7 +790,10 @@
     <sect2 id="svn.advanced.props.manip">
       <!-- @ENGLISH {{{
       <title>Manipulating Properties</title>
+      @ENGLISH }}} -->
+      <title>Использование свойств</title>
 
+      <!-- @ENGLISH {{{
       <para>The <command>svn</command> command affords a few ways to
         add or modify file and directory properties.  For properties
         with short, human-readable values, perhaps the simplest way to
@@ -621,12 +801,10 @@
         on the command-line of the <command>propset</command>
         subcommand.</para>
       @ENGLISH }}} -->
-      <title>Использование свойств</title>
-
       <para>Команда <command>svn</command> предоставляет несколько
-        способов добавления или изменения свойств файлов и директорий.
-        Свойства с короткими, читаемыми значениями, наверное проще всего
-        добавить указав имя и значение свойства в командной строке
+        способов добавления или изменения свойств файлов и каталогов.
+        Свойства с короткими, читаемыми значениями, наверное, проще всего
+        добавлять, указывая имя и значение свойства в командной строке
         подкоманды <command>propset</command>.</para>
 
       <screen>
@@ -648,7 +826,7 @@
       <para>Однако мы уже знаем о гибкости, предлагаемой Subversion
         для значений свойств. И если вам необходимо иметь многострочное
         текстовое, или даже бинарное значение свойства, передавать
-        такое значение через командную строку не удобно. Для
+        такое значение через командную строку неудобно. Для
         таких случаев команда <command>propset</command> имеет
         параметр <option>--file</option> (<option>-F</option>), указывающий
         имя файла, содержащего новое значение свойства.</para>
@@ -678,7 +856,7 @@
         (<literal>-</literal>) и точки (<literal>.</literal>).
           <footnote>
             <para>Если вы знакомы с XML, то синтаксис XML "Name" использует
-            практически тот же ASCII набор.</para>
+            практически тот же ASCII-набор.</para>
           </footnote>
       </para>
 
@@ -700,19 +878,19 @@
         value.  If you exit your editor without making any changes, no
         property modification will occur.</para>
       @ENGLISH }}} -->
-      <para>Дополнительно к команде <command>propset</command>,
+      <para>Кроме команды <command>propset</command>,
         <command>svn</command> имеет команду <command>propedit</command>.
         Эта команда использует для добавления или изменения свойств указанную
         программу-редактор (см. <xref
         linkend="svn.advanced.confarea.opts.config" />). При выполнении
-        команды, <command>svn</command> вызывает редактор с временным файлом,
+        команды <command>svn</command> вызывает редактор с временным файлом,
         содержащим текущее значение свойства (или с пустым файлом, если
         добавляется новое свойство). Затем вы просто меняете в редакторе
         значение, пока оно не станет таким, каким бы вы хотели его видеть,
         сохраняете временный файл и выходите из редактора. Если Subversion
-        обнаружит, что вы действительно изменили существующие значение
-        свойства, будет установлено новое значение. Если вы вышли из
-        редактора не внеся изменений, модификации свойства не
+        обнаружит, что вы действительно изменили существующее значение
+        свойства, будет записано новое значение. Если вы вышли из
+        редактора, не внеся никаких изменений, модификации свойства не
         произойдет.</para>
 
       <screen>
@@ -728,7 +906,7 @@
         sets of files with a single command.  For example, we could
         have done:</para>
       @ENGLISH }}} -->
-      <para>Обращаем ваше внимание на то, что как и другие команды
+      <para>Обращаем ваше внимание на то, что, как и другие команды
         <command>svn</command>, команды, относящиеся к свойствам
         могут применяться к нескольким путям за раз. Это дает возможность
         одной командой изменять свойства целого набора файлов. Например,
@@ -756,14 +934,14 @@
         paths) and a property name, print the value of the property to
         the standard output stream.</para>
       @ENGLISH }}} -->
-      <para>Все эти добавления и редактирования свойств не очень полезны,
+      <para>Все эти добавления и редактирования свойств не слишком полезны,
         если нельзя просто узнать значение свойства. Поэтому для показа
-        сохраненных для файлов и директорий имен и значений свойств,
+        сохраненных для файлов и каталогов имен и значений свойств,
         программа <command>svn</command> предлагает две подкоманды.
         Команда <command>svn proplist</command> перечисляет существующие
-        для указанного пути свойства. После того как вы знаете имя свойства,
+        для указанного пути свойства. После того как вы узнаете имя свойства,
         можно, используя <command>svn propget</command>, запросить его
-        значение. Эта команда выведет на стандартный поток ввода-вывода
+        значение. Эта команда выведет в стандартный поток ввода-вывода
         значение свойства для элемента по указанному пути (или путями) и с
         указанным именем.</para>
 
@@ -812,8 +990,8 @@
         <command>propset</command>.  For example, this command will
         <emphasis>not</emphasis> yield the desired effect:</para>
       @ENGLISH }}} -->
-      <para>Последней, относящейся к свойствам подкомандой является
-        <command>propdel</command>. Не смотря на то, что Subversion
+      <para>Последней относящейся к свойствам подкомандой является
+        <command>propdel</command>. Несмотря на то, что Subversion
         позволяет сохранять свойства с пустыми значениями, полностью
         удалить свойство, используя <command>propedit</command> или
         <command>propset</command>, нельзя. Например, такая команда
@@ -872,20 +1050,24 @@
         <command>svn propset</command> command with no target path:</para>
       @ENGLISH }}} -->
       <para>Помните, мы говорили о неверсионированных свойствах
-        правок? Их то же можно менять с помощью <command>svn</command>.
+        правок? Их тоже можно менять с помощью <command>svn</command>.
         Просто добавьте параметр командной строки <option>--revprop</option>
         и укажите правку, чье свойство вы хотите изменить. Учитывая
         глобальность правок, в этом случае не нужно указывать путь, так как
         вы находитесь в рабочей копии хранилища, в котором вы хотите
         изменить свойство правки. В противном случае, нужно просто указать
-        интересующий вас в хранилище URL (в том числе, это может быть и
+        интересующий вас в хранилище URL (в том числе это может быть и
         корневой URL хранилища). Например, может понадобиться заменить
-        лог-сообщение фиксации в существующей правке. <footnote>
+        лог-сообщение фиксации в существующей правке. 
+        
+        <footnote>
         <para>Исправление в лог сообщениях орфографических, грамматических
-        ошибок, <quote>просто ошибочных</quote> записей, наверно,
-        самые распространенные случаи использования параметра
-        <option>--revprop</option>.</para></footnote>Если текущая рабочая
-        директория является частью рабочей копии хранилища, можно просто
+        ошибок, <quote>просто ошибочных</quote> записей, наверное,
+        самый распространенный случай использования параметра
+        <option>--revprop</option>.</para></footnote>
+        
+        Если текущий рабочий
+        каталог является частью рабочей копии хранилища, можно просто
         выполнить команду <command>svn propset</command>, не указывая целевой
         путь:</para>
 
@@ -895,9 +1077,13 @@
 $
 </screen>
 
+      <!-- @ENGLISH {{{
       <para>But even if you haven't checked out a working copy from
         that repository, you can still affect the property change by
         providing the repository's root URL:</para>
+      @ENGLISH }}} -->
+      <para>Но даже если вы не вытаскивали из хранилища рабочую копию, 
+        вы можете изменить свойство, указав корневой URL хранилища:</para>
 
       <screen>
 $ svn propset svn:log '* button.c: Fix a compiler warning.' -r11 --revprop \
@@ -918,12 +1104,12 @@
       @ENGLISH }}} -->
       <para>Обратите внимание на то, что изменение этих
         неверсионированных свойств должно быть явно разрешено
-        администратором (см. <xref
-        linkend="svn.reposadmin.create.hooks" />). Учитывая то, что
-        свойства не версионируются, при не аккуратном редактировании,
-        вы рискуете потерять информацию. Для исключения потери информации,
-        администратор хранилища может принять меры предосторожности и
-        по умолчанию, изменение неверсионированных свойств
+        администратором (см. <xref linkend="svn.reposadmin.create.hooks" />). 
+        Учитывая то, что
+        свойства не версионируются, при неаккуратном редактировании
+        вы рискуете потерять информацию. Чтобы предотвратить потерю информации,
+        администратор хранилища может принять меры предосторожности, и
+        по умолчанию изменение неверсионированных свойств
         запрещено.</para>
 
       <tip>

Modified: trunk/src/ru/book/ch-basic-usage.xml
==============================================================================
--- trunk/src/ru/book/ch-basic-usage.xml	(original)
+++ trunk/src/ru/book/ch-basic-usage.xml	Sun Aug 17 15:58:39 2008
@@ -60,7 +60,7 @@
       <subcommand></command> will describe the syntax, switches,
       and behavior of the <command>subcommand</command>.</para>
     @ENGLISH }}} -->
-    <para>Перед тем как продолжить, запомните самую главную из всех команд
+    <para>Прежде чем продолжить чтение, запомните самую главную из всех команд
       Subversion: <command>svn help</command>. Клиент Subversion с интерфейсом 
       командной строки самодокументирован — команда <command>svn help 
       <subcommand></command> в любой момент подскажет синтаксис, 
@@ -87,11 +87,11 @@
       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>
+      воспользуйтесь командой <command>svn import</command>. Хотя,
+      вероятно, это будет первым, что вы сделаете при установке сервера 
+      Subversion, впоследствии вы будете заниматься этим нечасто. Подробное 
+      описание команды <xref linkend="svn.tour.other.import"/> приводится 
+      далее в этой главе.</para>
 
   </sect1>
 
@@ -827,7 +827,7 @@
               them.</para>
             @ENGLISH }}} -->
             <para>Вы можете попросить Subversion <quote>отметить</quote>
-              файлы и директории для удаления, добавления, копирования или
+              файлы и каталоги для удаления, добавления, копирования или
               перемещения. Хотя эти изменения сразу же отразятся в рабочей 
               копии, в хранилище не произойдет ни добавления, ни удаления
               до тех пор, пока вы не выполните фиксацию изменений.</para>
@@ -934,7 +934,7 @@
           изменения структуры рабочей копии используйте команды
           <command>svn copy</command>, <command>svn delete</command>
           и <command>svn move</command>, а для добавления новых файлов
-          и директорий под контроль версий используйте
+          и каталогов под контроль версий используйте
           <command>svn add</command>.</para>
       </warning>
 
@@ -1046,7 +1046,7 @@
               добавления как копия <filename>foo</filename>, а
               <filename>foo</filename> будет запланирован для удаления.
               <command>svn move</command> не создает промежуточных
-              директорий.</para>
+              каталогов.</para>
           </listitem>
         </varlistentry>
 
@@ -1327,10 +1327,10 @@
   L     some_dir            # svn оставила блокировку в .svn-области для some_dir
 M       bar.c               # содержимое bar.c имеет локальные изменения
  M      baz.c               # в baz.c есть изменения в свойствах, а в содержимом нет
-X       3rd_party           # директория является частью внешней зависимости
+X       3rd_party           # каталог является частью внешней зависимости
 ?       foo.o               # svn не управляет foo.o
 !       some_dir            # svn управляет этим элементом, но он отсутствует или не поврежден
-~       qux                 # элемент версионировался как файл/директория/ссылка, но тип был изменен
+~       qux                 # элемент версионировался как файл/каталог/ссылка, но тип был изменен
 I       .screenrc           # svn не управляет этим элементом и настроена на его игнорирование
 A  +    moved_dir           # добавлен с историей своего происхождения
 M  +    moved_dir/README    # добавлен с историей и имеет локальные изменения
@@ -1339,7 +1339,7 @@
 C       stuff/loot/lump.c   # файл имеет текстовый конфликт с момента обновления
  C      stuff/loot/glub.c   # файл имеет конфликт в свойствах с момента обновления
 R       xyz.c               # файл запланирован для замены
-    S   stuff/squawk        # файл или директория были переключены на ветку
+    S   stuff/squawk        # файл или каталог были переключены на ветку
      K  dog.jpg             # файл заблокирован локально; присутствует маркер блокирования
      O  cat.jpg             # файл заблокирован в хранилище другим пользователем
      B  bird.jpg            # файл заблокирован локально, но блокировка была нарушена
@@ -1478,7 +1478,7 @@
                 воспользовавшись параметром <option>--quiet</option>
                 (<option>-q</option>) команды <command>svn status</command>,
                 либо установив свойство <literal>svn:ignore</literal>
-                родительской директории. Дополнительную информацию об 
+                родительского каталога. Дополнительную информацию об 
                 игнорировании файлов см. в <xref
                 linkend="svn.advanced.props.special.ignore" />.</para>
 
@@ -1582,7 +1582,7 @@
           be printed.</para>
         @ENGLISH }}} -->
         <para>Вторая колонка показывает статус свойств файлов и
-          директорий (больше о свойствах см. в <xref
+          каталогов (подробнее о свойствах см. в <xref
           linkend="svn.advanced.props"/>). Если во второй колонке
           показывается <computeroutput>M</computeroutput>, свойства
           были изменены. Если в этой колонке показывается
@@ -1606,10 +1606,10 @@
           (more about that later in this chapter).</para>
         @ENGLISH }}} -->
         <para>Третья колонка может содержать только пробел или
-          <computeroutput>L</computeroutput>, это значит, что у директории
+          <computeroutput>L</computeroutput>, это значит, что у каталога
           заблокирована рабочая область <filename>.svn</filename>.
-          Вы увидите <computeroutput>L</computeroutput> если запустите
-          <command>svn status</command> в директории, в которой выполняется
+          Вы увидите <computeroutput>L</computeroutput>, если запустите
+          <command>svn status</command> в каталоге, в котором выполняется
           <command>svn commit</command> — например, когда вы
           редактируете лог-сообщение.</para>
 
@@ -3207,7 +3207,7 @@
         downloading the files to your local machine:</para>
       @ENGLISH }}} -->
       <para>Команда <command>svn list</command> показывает содержимое
-        директории в хранилище, при этом не закачивая его на локальную
+        каталога в хранилище, при этом не закачивая его на локальную
         машину:</para>
 
       <screen>




More information about the svnbook-dev mailing list