[svnbook] r4288 committed - Another translated part
svnbook at googlecode.com
svnbook at googlecode.com
Sat Aug 11 02:05:04 CDT 2012
Revision: 4288
Author: zeelax at gmail.com
Date: Sat Aug 11 00:04:47 2012
Log: Another translated part
http://code.google.com/p/svnbook/source/detail?r=4288
Modified:
/branches/1.6/ru/TRANSLATION-STATUS
/branches/1.6/ru/book/ch01-fundamental-concepts.xml
/branches/1.6/ru/book/ch02-basic-usage.xml
=======================================
--- /branches/1.6/ru/TRANSLATION-STATUS Sun Jul 8 08:40:52 2012
+++ /branches/1.6/ru/TRANSLATION-STATUS Sat Aug 11 00:04:47 2012
@@ -19,11 +19,11 @@
Untranslated: 4.54% - 37 lines in 3 blocks
Need proofreading: 13.44% - 77 lines in 4 blocks
* book/ch01-fundamental-concepts.xml
- Untranslated: 14.50% - 239 lines in 7 blocks
- Need proofreading: 72.57% - 760 lines in 12 blocks
+ Untranslated: 4.40% - 61 lines in 4 blocks
+ Need proofreading: 83.73% - 945 lines in 15 blocks
* book/ch02-basic-usage.xml
- Untranslated: 93.30% - 2986 lines in 4 blocks
- Need proofreading: 6.69% - 106 lines in 4 blocks
+ Untranslated: 76.06% - 2521 lines in 3 blocks
+ Need proofreading: 23.93% - 558 lines in 3 blocks
* book/ch03-advanced-topics.xml
Untranslated: 57.45% - 3200 lines in 20 blocks
Need proofreading: 42.52% - 1494 lines in 20 blocks
@@ -49,4 +49,4 @@
* book/index.xml
Translation complete
-Summa summarum: 19.75% translated, 16.12% need proofreading
+Summa summarum: 21.64% translated, 18.07% need proofreading
=======================================
--- /branches/1.6/ru/book/ch01-fundamental-concepts.xml Sun Jul 8 08:40:52
2012
+++ /branches/1.6/ru/book/ch01-fundamental-concepts.xml Sat Aug 11 00:04:47
2012
@@ -701,8 +701,9 @@
<para>Несмотря на то, что Subversion в первую очередь является
системой типа копирование-изменение-слияние, в ней признается
необходимость блокирования определенных файлов и предлагаются
- соответствующие механизмы. Подробнее эта возможность
рассматривается
- далее в этой книге, см. <xref
linkend="svn.advanced.locking"/>.</para>
+ соответствующие механизмы. Подробнее эта возможность
+ рассматривается далее в этой книге, см.
+ <xref linkend="svn.advanced.locking"/>.</para>
</sidebar>
@@ -711,13 +712,18 @@
</sect1>
<!-- @CHK }} -->
-<!-- @TR {{ -->
+<!-- @CHK {{ -->
<!-- =================================================================
-->
<!-- =================================================================
-->
<!-- =================================================================
-->
<sect1 id="svn.basic.in-action">
+ <!-- @ENGLISH {{{
<title>Version Control the Subversion Way</title>
+ @ENGLISH }}} -->
+ <title>Управление версиями в стиле Subversion</title>
+<!-- @TR {{ -->
+ <!-- @ENGLISH {{{
<para>We've mentioned already that Subversion is a modern,
network-aware version control system. As we described in
<xref linkend="svn.basic.version-control-basics"/> (our
@@ -727,11 +733,26 @@
interact with that data. In this section, we'll begin to
introduce the specific ways in which Subversion implements
version control.</para>
+ @ENGLISH }}} -->
+ <para>Мы уже упоминали, что Subversion — это соверменная
+ сетевая система управления версиями. As we described in
+ <xref linkend="svn.basic.version-control-basics"/> (our
+ high-level version control overview), a repository serves as the
+ core storage mechanism for Subversion's versioned data, and it's
+ via working copies that users and their software programs
+ interact with that data. В этом разделе мы начнем представление
+ специальных техник, используемых Subversion для управления
+ версиями</para>
+<!-- @TR }} -->
<!-- ===============================================================
-->
<sect2 id="svn.basic.svn-repositories">
+ <!-- @ENGLISH {{{
<title>Subversion Repositories</title>
+ @ENGLISH }}} -->
+ <title>Репозитории Subversion</title>
+ <!-- @ENGLISH {{{
<para>Subversion implements the concept of a version control
repository much as any other modern version control system
would. Unlike a working copy, a Subversion repository is an
@@ -743,18 +764,33 @@
copy and how to manipulate it. For the finer details of the
repository, though, check out
<xref linkend="svn.reposadmin"/>.</para>
+ @ENGLISH }}} -->
+ <para>Subversion реализует концепцию контроля версий также как
+ многие соверменные системы управления версиями. В отличие от
+ рабочей копии, репозиторий Subversion это абстрактная сущность
+ управляемая почти исключительно инструментами и библиотеками
+ Subversion. Поскольку большая часть взаимодействия пользователя
+ связана с использованием клиента и происходит в контексте
+ рабочей копии, мы потратим большую часть книги на обсуждение
+ рабочих копий и управления ими. Для дополнительной информации о
+ репозитории Subversion существует
+ <xref linkend="svn.reposadmin"/>.</para>
</sect2>
<!-- ===============================================================
-->
<sect2 id="svn.basic.in-action.revs">
+ <!-- @ENGLISH {{{
<title>Revisions</title>
+ @ENGLISH }}} -->
+ <title>Ревизии</title>
<indexterm>
<primary>revisions</primary>
<secondary>defined</secondary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>A Subversion client commits (that is, communicates the
changes made to) any number of files and directories as a
single atomic transaction. By atomic transaction, we mean
@@ -762,7 +798,15 @@
repository, or none of them is. Subversion tries to retain
this atomicity in the face of program crashes, system crashes,
network problems, and other users' actions.</para>
-<!-- @TR }} -->
+ @ENGLISH }}} -->
+ <para>Клиент Subversion фиксирует (то есть, передаёт в
+ перозиторий) изменения любого количества файлов и каталогов
+ как одну атомарную транзакцию. Под атомарностью транзакции
+ подразумевается следующее: либо принимаются все изменения,
+ либо ни одно из них. Subversion tries to retain this
+ atomicity in the face of program crashes, system crashes,
+ network problems, and other users' actions.</para>
+<!-- @CHK }} -->
<!-- @CHK {{ -->
<!-- @ENGLISH {{{
@@ -776,11 +820,11 @@
@ENGLISH }}} -->
<para>Каждый раз, когда происходит фиксация, создаётся
новое состояние файловой системы, которое называется
- <firstterm>правкой</firstterm>. Каждая правка получает
- уникальный номер, на единицу больший номера
- предыдущей правки. Начальная правка только что созданного
- хранилища получает номер 0 и не содержит ничего, кроме
- пустого корневого каталога.</para>
+ <firstterm>ревизией</firstterm>. Каждая ревизия получает
+ уникальный номер, на единицу больший номера предыдущей
+ ревизии. Начальная правка только что созданного хранилища
+ получает номер 0 и не содержит ничего, кроме пустого
+ каталога.</para>
<!-- @ENGLISH {{{
<para><xref linkend="svn.basic.in-action.revs.dia-1"/>
@@ -791,26 +835,29 @@
of the way the repository looked after a commit.</para>
@ENGLISH }}} -->
<para><xref linkend="svn.basic.in-action.revs.dia-1"/> отлично
- иллюстрирует хранилище. Представьте массив номеров правок,
+ иллюстрирует хранилище. Представьте массив номеров ревизий,
начинающийся с 0, с направлением слева направо. Каждый номер
- правки имеет соответствующее дерево файлов, а каждое дерево
- представляет собой <quote>снимок</quote> того, как хранилище
- выглядело после фиксации.</para>
+ ревизии имеет соответствующее дерево файлов, а каждое дерево
+ представляет собой <quote>снимок</quote> того, как репозиторий
+ выглядел после фиксации.</para>
<!-- @CHK }} -->
-<!-- @TR {{ -->
+<!-- @CHK {{ -->
<figure id="svn.basic.in-action.revs.dia-1">
+ <!-- @ENGLISH {{{
<title>Tree changes over time</title>
+ @ENGLISH }}} -->
+ <title>Изменения дерева с течением времени</title>
<graphic fileref="images/ch02dia7.png"/>
</figure>
-<!-- @TR }} -->
+<!-- @CHK }} -->
<!-- @CHK {{ -->
<sidebar>
<!-- @ENGLISH {{{
<title>Global Revision Numbers</title>
@ENGLISH }}} -->
- <title>Глобальные номера правок</title>
+ <title>Глобальные номера ревизий</title>
<indexterm>
<primary>revisions</primary>
@@ -835,30 +882,35 @@
might want to see <xref linkend="svn.forcvs"/> for more
details.)</para>
@ENGLISH }}} -->
- <para>В отличие от большинства систем управления версиями, номера
- правок в Subversion относятся <emphasis>ко всем</emphasis>,
- а не только к отдельно взятым файлам. Каждый номер правки
- соответствует целому дереву, отдельному состоянию хранилища после
- зафиксированного изменения. Иначе говоря, правка N
- представляет состояние файловой системы хранилища после
выполнения
- N-ой фиксации. Когда пользователи Subversion говорят о
- <quote>правке 5 <filename>foo.c</filename></quote>, на самом деле
- речь идет о <quote><filename>foo.c</filename> входящем в правку
- 5</quote>. Заметьте, что правки N и M файла
- <emphasis>не обязательно</emphasis> будут отличаться! Многие
- системы управления версиями исполюзуют пофайловую нумерацию
правок,
- так что этот подход на первых порах может показаться непривычным.
- (Бывшие пользователи CVS могут обратиться за более подробной
- информацией к <xref linkend="svn.forcvs"/>.)</para>
+ <para>В отличие от большинства систем управления версиями,
+ номера ревизий в Subversion относятся
+ <emphasis>ко всем</emphasis>, а не только к отдельно взятым
+ файлам. Каждый номер ревизии соответствует целому дереву,
+ отдельному состоянию репозитория после зафиксированного
+ изменения. Иначе говоря, правка N представляет состояние
+ файловой системы репозитория после выполнения N-ой фиксации.
+ Когда пользователи Subversion говорят о <quote>ревизии 5
+ <filename>foo.c</filename></quote>, на самом деле речь идет
+ о <quote><filename>foo.c</filename> входящем в ревизию
+ 5</quote>. Заметьте, что ревизии N и M файла <emphasis>не
+ обязательно</emphasis> будут отличаться! Многие системы
+ управления версиями исполюзуют пофайловую нумерацию ревизий,
+ так что этот подход на первых порах может показаться
+ непривычным. (Бывшие пользователи CVS могут обратиться за
+ более подробной информацией к
+ <xref linkend="svn.forcvs"/>.)</para>
</sidebar>
<!-- @CHK }} -->
-<!-- @TR {{ -->
+<!-- @CHK {{ -->
</sect2>
<!-- ===============================================================
-->
<sect2 id="svn.advanced.reposurls">
+ <!-- @ENGLISH {{{
<title>Addressing the Repository</title>
+ @ENGLISH }}} -->
+ <title>Обращение к репозиторию</title>
<indexterm>
<primary>svn</primary>
@@ -871,11 +923,19 @@
<tertiary>URLs</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>Subversion client programs use URLs to identify versioned
files and directories in Subversion repositories. For the
most part, these URLs use the standard syntax, allowing for
server names and port numbers to be specified as part of the
URL.</para>
+ @ENGLISH }}} -->
+ <para>Программа-клиент Subversion использует
+ URL<footnote><para>Единый указатель ресурсов (Uniform Resource
+ Locator)</para></footnote> для идентификации файлов и каталогов
+ в репозитории. В большинстве случаем используется стандартный
+ синтаксис позволяющий указать адреса и порты как часть
+ URL.</para>
<informalexample>
<itemizedlist spacing="compact">
@@ -888,6 +948,7 @@
</itemizedlist>
</informalexample>
+ <!-- @ENGLISH {{{
<para>Subversion repository URLs aren't limited to only
the <literal>http://</literal> variety. Because Subversion
offers several different ways for its clients to communicate
@@ -898,45 +959,81 @@
repository access methods. For more details about
Subversion's server options, see
<xref linkend="svn.serverconfig"/>.</para>
+ @ENGLISH }}} -->
+ <para>Адреса репозитория Subversion не ограничивается схемой
+ <literal>http://</literal>. Так как Subversion предлагает
+ различные способы доступа к репозиторию, адрес изменяется в
+ зависимости от метода.
+ <xref linkend="svn.basic.in-action.wc.tbl-1"/>
+ описывает схемы URL для разных методов доступа.
+ Дополнительную информацию о сервере Subversion содержит
+ <xref linkend="svn.serverconfig"/>.</para>
<table id="svn.basic.in-action.wc.tbl-1">
+ <!-- @ENGLISH {{{
<title>Repository access URLs</title>
+ @ENGLISH }}} -->
+ <title>URL доступа к репозиторию</title>
<tgroup cols="2">
<thead>
<row>
+ <!-- @ENGLISH {{{
<entry>Schema</entry>
<entry>Access method</entry>
+ @ENGLISH }}} -->
+ <entry>Схема</entry>
+ <entry>Метод доступа</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>file:///</literal></entry>
+ <!-- @ENGLISH {{{
<entry>Direct repository access (on local disk)</entry>
+ @ENGLISH }}} -->
+ <entry>Прямой доступ к репозиторию (файлы
+ на локальном диске)</entry>
</row>
<row>
<entry><literal>http://</literal></entry>
+ <!-- @ENGLISH {{{
<entry>Access via WebDAV protocol to Subversion-aware
Apache server</entry>
+ @ENGLISH }}} -->
+ <entry>Доступ по протоколу WebDAV через веб-сервер
+ Apache</entry>
</row>
<row>
<entry><literal>https://</literal></entry>
+ <!-- @ENGLISH {{{
<entry>Same as <literal>http://</literal>, but with
SSL encryption</entry>
+ @ENGLISH }}} -->
+ <entry>Тоже что <literal>http://</literal>, но с
+ шифрованием SSL</entry>
</row>
<row>
<entry><literal>svn://</literal></entry>
+ <!-- @ENGLISH {{{
<entry>Access via custom protocol to an
<literal>svnserve</literal> server</entry>
+ @ENGLISH }}} -->
+ <entry>Доступ к серверу<literal>svnserve</literal>
+ по собственному протоколу</entry>
</row>
<row>
<entry><literal>svn+ssh://</literal></entry>
+ <!-- @ENGLISH {{{
<entry>Same as <literal>svn://</literal>, but through
an SSH tunnel</entry>
+ @ENGLISH }}} -->
+ <entry>Тоже что <literal>svn://</literal>, но
+ через SSH-туннель</entry>
</row>
</tbody>
</tgroup>
</table>
-<!-- @TR }} -->
+<!-- @CHK }} -->
<!-- @CHK {{ -->
<!-- @ENGLISH {{{
@@ -947,11 +1044,11 @@
of <literal>localhost</literal> or no server name at
all:</para>
@ENGLISH }}} -->
- <para>Однако, в обработке URL системой Subversion есть некоторые
нюансы, о
- которых нужно помнить. Например, в соответствии с принятыми
- соглашениями, URL, использующий метод доступа
+ <para>Однако, в обработке URL системой Subversion есть некоторые
+ нюансы, о которых нужно помнить. Например, в соответствии с
+ принятыми соглашениями, URL, использующий метод доступа
<literal>file:</literal> (этот метод доступа используется для
- локальных хранилищ), должен либо включать имя сервера
+ локальных репозиториев), должен либо включать имя сервера
<literal>localhost</literal>, либо вообще не содержать имени
сервера:</para>
@@ -976,16 +1073,17 @@
<literal>X</literal> is the drive on which the repository
resides:</para>
@ENGLISH }}} -->
- <para>Кроме того, тем, кто применяет схему <literal>file:</literal>
на
- платформе Windows, необходимо использовать неофициальные
- <quote>стандартные</quote> правила записи при обращении к
- хранилищу, которое находится на одном компьютере, но на разных
- дисках с клиентом. Обе приведенные ниже записи будут
- работать; здесь <literal>X</literal> — это имя диска, на
котором
- находится хранилище:</para>
+ <para>Кроме того, тем, кто применяет схему
+ <literal>file:</literal> на платформе Windows, необходимо
+ использовать неофициальные <quote>стандартные</quote>
+ правила записи при обращении к репозиторию, который
+ находится на одном компьютере, но на разных дисках с
+ клиентом. Обе приведенные ниже записи будут работать;
+ здесь <literal>X</literal> — это имя диска, на
+ котором находится хранилище:</para>
<!-- @CHK }} -->
-<!-- @TR {{ -->
+<!-- @CHK {{ -->
<informalexample>
<itemizedlist spacing="compact">
<listitem>
@@ -997,6 +1095,7 @@
</itemizedlist>
</informalexample>
+ <!-- @ENGLISH {{{
<para>Note that a URL uses forward slashes even though the
native (non-URL) form of a path on Windows uses backslashes.
Also note that when using
@@ -1004,8 +1103,17 @@
form at the command line, you need to quote the URL (wrap it
in quotation marks) so that the vertical bar character is not
interpreted as a pipe.</para>
+ @ENGLISH }}} -->
+ <para>Обратите внимание на использование косой черты, хотя на
+ платформе Windows для формирования пути используется обратная
+ косая черта. Также заметьте, что для использования формы
+ <literal>file:///<replaceable>X</replaceable>|/</literal>
+ в командной строке, вам необходимо заключить весь пусть в
+ кавычки, чтобы вертикальная черта не была воспринята
+ интерпретатором как символ конвейр.</para>
<note>
+ <!-- @ENGLISH {{{
<para>You cannot use Subversion's <literal>file://</literal> URLs
in a regular web browser the way typical
<literal>file://</literal> URLs can. When you attempt to view
@@ -1016,8 +1124,18 @@
linkend="svn.developer.layerlib.repos" />), and your browser
will not understand how to interact with that
filesystem.</para>
+ @ENGLISH }}} -->
+ <para>Вы не сможете использовать адрес Subversion
+ <literal>file://</literal> также, как вы используете обычный
+ адрес <literal>file://</literal>. При попытке открыть
+ <literal>file://</literal> в браузере, он обращается к файлам
+ напрямую, в то время как ресурсы Subversion находятся в
+ виртуальной файловой системе (см. <xref
+ linkend="svn.developer.layerlib.repos" />), и браузер не
+ может взаимодействовать с этой системой.</para>
</note>
+ <!-- @ENGLISH {{{
<para>The Subversion client will automatically encode URLs as
necessary, just like a web browser does. For example, the URL
<literal>http://host/path with space/project/españa</literal>
@@ -1028,7 +1146,20 @@
If the URL contains spaces, be sure to place it within
quotation marks at the command line so that your shell treats
the whole thing as a single argument to the program.</para>
+ @ENGLISH }}} -->
+ <para>Клиент Subversion автоматически кодирует адрес, также как
+ это делает веб-браузер. Например, URL
+ <literal>http://host/path with space/project/españa</literal>,
+ содержащий пробелы и символы Юникода, будет автоматически
+ закодирован как
+
<literal>http://host/path%20with%20space/project/espa%C3%B1a</literal>.
+ Если адрес содержит пробелы, убедитесь, что заключили его в
+ кавычки, чтобы интерпретатор воспринял всю строку адреса
+ как единый аргумент программы-клиента.</para>
+<!-- @CHK }} -->
+<!-- @TR {{ -->
+ <!-- @ENGLISH {{{
<para>There is one notable exception to Subversion's handling of
URLs which also applies to its handling of local paths in many
contexts, too. If the final path component of your URL or
@@ -1036,6 +1167,14 @@
to use a special syntax—described in
<xref linkend="svn.advanced.pegrevs" />—in order to make
Subversion properly address that resource.</para>
+ @ENGLISH }}} -->
+ <para>There is one notable exception to Subversion's handling of
+ URLs which also applies to its handling of local paths in many
+ contexts, too. If the final path component of your URL or
+ local path contains an at sign (<literal>@</literal>), you need
+ to use a special syntax—described in
+ <xref linkend="svn.advanced.pegrevs" />—in order to make
+ Subversion properly address that resource.</para>
<para>In Subversion 1.6, a new caret (<literal>^</literal>)
notation was introduced as a shorthand for <quote>the URL of
@@ -1052,12 +1191,15 @@
<literal>^</literal>.</para>
</sect2>
+<!-- @TR }} -->
<!-- ===============================================================
-->
<sect2 id="svn.basic.in-action.wc">
+ <!-- @ENGLISH {{{
<title>Subversion Working Copies</title>
+ @ENGLISH }}} -->
+ <title>Рабочие копии</title>
-<!-- @TR }} -->
<indexterm>
<primary>working copy</primary>
<secondary>defined</secondary>
@@ -1125,15 +1267,14 @@
Файлы в служебном каталоге помогают Subversion определить
какие файлы рабочей копии содержат неопубликованные изменения, и
какие
файлы устарели по отношению к файлам других участников.</para>
-<!-- @CHK }} -->
-<!-- @TR {{ -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-->
<sect3 id="svn.basic.in-action.track-repos">
+ <!-- @ENGLISH {{{
<title>How the working copy works</title>
-<!-- @TR }} -->
+ @ENGLISH }}} -->
+ <title>Как работают рабочие копии</title>
-<!-- @CHK {{ -->
<!-- @ENGLISH {{{
<para>For each file in a working directory, Subversion records
(among other things) two essential pieces of
=======================================
--- /branches/1.6/ru/book/ch02-basic-usage.xml Mon Jul 2 09:04:03 2012
+++ /branches/1.6/ru/book/ch02-basic-usage.xml Sat Aug 11 00:04:47 2012
@@ -48,11 +48,13 @@
<!-- =================================================================
-->
<!-- =================================================================
-->
<!-- =================================================================
-->
+<!-- @TR }} -->
+<!-- @CHK {{ -->
<sect1 id="svn.tour.help">
<!-- @ENGLISH {{{
<title>Help!</title>
@ENGLISH }}} -->
- <title>Читайте справку!</title>
+ <title>Help!</title>
<indexterm>
<primary>svn</primary>
@@ -60,6 +62,7 @@
<tertiary>help</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>It goes without saying that this book exists to be a source
of information and assistance for Subversion users new and old.
Conveniently, though, the Subversion command-line is
@@ -67,6 +70,14 @@
shelf (wooden, virtual, or otherwise). The <command>svn
help</command> command is your gateway to that built-in
documentation:</para>
+ @ENGLISH }}} -->
+ <para>Само собой разумеется, эта книгая является источником
+ информации и помощи для пользователей Subversion, как новых,
+ так и старых. Однако, командная строка Subversion
+ самодокументируемая, что избавляет от необходимости обращаться
+ к книге (бумажной, виртуальной или какой-либо ещё). Команда
+ <command>svn help</command> — поставщик встроенной
+ документации:</para>
<informalexample>
<screen>
@@ -88,11 +99,18 @@
</screen>
</informalexample>
+ <!-- @ENGLISH {{{
<para>As described in the previous output, you can ask for help on
a particular subcommand by running <userinput>svn help
<replaceable>SUBCOMMAND</replaceable></userinput>. Subversion
will respond with the full usage message for that subcommand,
including its syntax, options, and behavior:</para>
+ @ENGLISH }}} -->
+ <para>Как гласит вывод предыдущей команды, вы можете запросить
+ справку по нужной подкоманде вызовом <userinput>svn help
+ <replaceable>ПОДКОМАНДА</replaceable></userinput>. Subversion
+ ответит полным описанием подкоманды, включая синтаксис, опции и
+ характер работы:</para>
<informalexample>
<screen>
@@ -108,13 +126,17 @@
</informalexample>
<sidebar>
+ <!-- @ENGLISH {{{
<title>Options and Switches and Flags, Oh My!</title>
-
+ @ENGLISH }}} -->
+ <title>Опции, ключи, флаги, подумать только!</title>
+
<indexterm>
<primary>svn</primary>
<secondary>options</secondary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>The Subversion command-line client has numerous command
modifiers. Some folks refer to such things
as <quote>switches</quote> or <quote>flags</quote>—in
@@ -123,15 +145,25 @@
subcommand, plus a set of options which are globally supported
by all subcommands, listed near the bottom of the built-in
usage message for that subcommand.</para>
+ @ENGLISH }}} -->
+ <para>Клиент командной строки Subversion имеет несколько
+ модификаторов. Некоторые называю их <quote>ключами</quote>
+ or <quote>флагами</quote> — в этой книге мы зовем их
+ <quote>опциями</quote>. Опции, поддерживаемые подкомандами
+ <command>svn</command>, а также список глобальных опций,
+ поддерживаемых всеми командами, вы найдете в нижней части
+ встроенного справочного сообщения для конкретной
+ подкоманды.</para>
+ <!-- @ENGLISH {{{
<para>Subversion's options have two distinct forms: short
options are a single hyphen followed by a single letter, and
long options consist of two hyphens followed by several
letters and hyphens (e.g., <literal>-s</literal>
- and <literal>--this-is-a-long-option</literal>, respectively).
+ and <literal>-ﳢ-this-is-a-long-option</literal>,
respectively).
Every option has at least one long format. Some, such as
- the <option>--changelist</option> option, feature an
- abbreviated long-format alias (<option>--cl</option>, in this
+ the <option>-ﳢ-changelist</option> option, feature an
+ abbreviated long-format alias (<option>-ﳢ-cl</option>, in
this
case). Only certain options—generally the most-used
ones—have an additional short format. To maintain
clarity in this book, we usually use the long form in code
@@ -140,9 +172,25 @@
short form (to make it easier to remember). Use the form
you're more comfortable with when executing your own
Subversion commands.</para>
+ @ENGLISH }}} -->
+ <para>Опции Subversion имеют две различные формы: короткие опции,
+ состоящие из знака дефиса с последующей буквой, и длинные
+ — состоящие из двух знаков дефиса и последующих букв и
+ знаков дефиса (например, <literal>-s</literal>
+ и <literal>--this-is-a-long-option</literal>, соответственно).
+ Каждая опция имеет как минимум один длинный формат. Некоторые,
+ как опция <option>--changelist</option>, имеют сокращенный
+ длинный псевдоним (<option>--cl</option>, в данном случае).
+ Только некоторые, наиболее часто используемые опции, имеют
+ короткий формат. Для поддержиния ясности мы всегда используем
+ длинные формат в примерах, но при описании опций мы даём
+ длинный вариант (для поддержания ясности) и короткий (для
+ облегчения запоминания). Вы можете использовать в командах
+ форму, наиболее удобную вам.</para>
</sidebar>
+ <!-- @ENGLISH {{{
<para>Many Unix-based distributions of Subversion include manual
pages of the sort that can be invoked using
the <command>man</command> program, but those tend to carry only
@@ -154,6 +202,17 @@
Subversion-related discussions just begging to be located by
your favorite search engine. Subversion help is never too far
away.</para>
+ @ENGLISH }}} -->
+ <para>Многие, основанные на Unix, дистрибутивы Subversion включают
+ страницы руководства, которые можно вызвать с помощью команды
+ <command>man</command> но в них лишь содержатся указания на
+ реальные источники справки, такие как сайт проетка или сайт этой
+ книги. Также некоторые компании осуществляют поддержку
+ пользователей Subversion, обычно посредством онлайн-дискуссий и
+ платным консультированием. Ну и, конечно же, интернет содержит
+ огромное количество материалов о Subversion, достаточно лишь
+ воспользоваться любимой поисковой системой. Помощь по Subversion
+ никогда не бывает <quote>слишком далеко</quote>.</para>
</sect1>
@@ -161,17 +220,30 @@
<!-- =================================================================
-->
<!-- =================================================================
-->
<sect1 id="svn.tour.importing">
+ <!-- @ENGLISH {{{
<title>Getting Data into Your Repository</title>
+ @ENGLISH }}} -->
+ <title>Помещение данных в репозиторий</title>
+ <!-- @ENGLISH {{{
<para>You can get new files into your Subversion
repository in two ways: <command>svn import</command> and
<command>svn
add</command>. We'll discuss <command>svn import</command> now
and will discuss <command>svn add</command> later in this
chapter when we review a typical day with Subversion.</para>
+ @ENGLISH }}} -->
+ <para>Для помещения новых файлов в репозиторий существует два способа:
+ команда <command>svn import</command> и команда <command>svn
+ add</command>. Сейчас мы обсудим команду <command>svn
+ import</command>, а комаду <command>svn add</command> обсудим
+ позднее в этой главе.</para>
<!-- ===============================================================
-->
<sect2 id="svn.tour.importing.import">
+ <!-- @ENGLISH {{{
<title>Importing Files and Directories</title>
+ @ENGLISH }}} -->
+ <title>Импорт файлов и каталогов</title>
<indexterm>
<primary>svn</primary>
@@ -179,6 +251,7 @@
<tertiary>import</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>The <command>svn import</command> command is a quick way to
copy an unversioned tree of files into a repository, creating
intermediate directories as necessary. <command>svn
@@ -186,6 +259,15 @@
are immediately committed to the repository. You typically
use this when you have an existing tree of files that you want to
begin tracking in your Subversion repository. For example:</para>
+ @ENGLISH }}} -->
+ <para>Команада <command>svn import</command> предлагает быстрый
+ способ копирования неверсионируемых файлов и каталогов в
+ репозиторий, с созданием промежуточных каталогов по необходимости.
+ Команаде <command>svn import</command> не требуется рабочая копия
+ и файлы немедленно помещаются в репозиторий. Вам следует
+ использовать её, чтобы поместить в репозиторий уже имеющийся набор
+ файлов, версии которых вы хотите контролировать с помощью
+ Subversion. Например:</para>
<informalexample>
<screen>
@@ -202,6 +284,7 @@
</screen>
</informalexample>
+ <!-- @ENGLISH {{{
<para>The previous example copied the contents of the local
directory <filename>mytree</filename> into the directory
<filename>some/project</filename> in the repository. Note
@@ -209,6 +292,14 @@
first—<command>svn import</command> does that for you.
Immediately after the commit, you can see your data in the
repository:</para>
+ @ENGLISH }}} -->
+ <para>Команда из предыдущего примера копирует содержимое
+ каталога <filename>mytree</filename> в каталог
+ <filename>some/project</filename> репозитория. Заметьте,
+ что вам не пришлось заранее создавать новый каталог
+ — команда <command>svn import</command> делает это
+ за вас. Сразу после импорта ваши данные уже видны в
+ репозитоии:</para>
<informalexample>
<screen>
@@ -220,17 +311,27 @@
</screen>
</informalexample>
+ <!-- @ENGLISH {{{
<para>Note that after the import is finished, the original local
directory is <emphasis>not</emphasis> converted into a working
copy. To begin working on that data in a versioned fashion,
you still need to create a fresh working copy of that
tree.</para>
+ @ENGLISH }}} -->
+ <para>Заметьте, что после завершения импорта исходный локальный
+ каталог <emphasis>не конвертируется</emphasis> в рабочую копию
+ Чтобы начать работу с данными, версии которых будут
+ контролироваться, необходимо создать рабочую копию дерева
+ этих данных.</para>
</sect2>
<!-- ===============================================================
-->
<sect2 id="svn.tour.importing.layout">
+ <!-- @ENGLISH {{{
<title>Recommended Repository Layout</title>
+ @ENGLISH }}} -->
+ <title>Рекомендуемая схема репозитория</title>
<indexterm>
<primary>trunk</primary>
@@ -245,6 +346,7 @@
<primary>project root</primary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>Subversion provides the ultimate flexibility in terms of
how you arrange your data. Because it simply versions
directories and files, and because it ascribes no particular
@@ -255,7 +357,16 @@
to navigate different Subversion repositories which may carry
completely different and unpredictable arrangements of the
data within them.</para>
+ @ENGLISH }}} -->
+ <para>Subversion позволяет достаточно гибко организовывать
+ ваши данные. Так как это всего лишь версии файлов и каталогов,
+ и это не предаёт этим объектам особого значения, вы можете
+ организовать организовать данные любым удобным образом. К
+ сожалению, эта гибкость также позволяет легко заблудится среди
+ большого количества репозиториев, содержащих в себе совершенно
+ случайно и непредсказуемо организованные данные.</para>
+ <!-- @ENGLISH {{{
<para>To counteract this confusion, we recommend that you follow
a repository layout convention (established long ago, in the
nascency of the Subversion project itself) in which a handful
@@ -280,8 +391,35 @@
tags (or collections of tags) will be created. Of course, if
a repository houses only a single project, the root of the
repository can serve as the project root, too.</para>
+ @ENGLISH }}} -->
+ <para>Чтобы избежать путаницы, мы рекомендуем вам следовать
+ определенной схеме репозитория (принятой достаточно давно,
+ ещё в момент зарождения проекта Subversion) в которой
+ специально поименованные каталоги позволяют передать ценные
+ сведения о данных, находящихся в них. Большая часть проектов
+ состоит из <quote>основной линии</quote>
+ или <firstterm>ствол<footnote><para>англ. trunk</para>
+ </footnote></firstterm> разработки; нескольких
+ <firstterm>ветвей</firstterm>, являющихся независимыми
+ направлениями разработки; и <firstterm>меток</firstterm>
+ — именованых стабильных снимков определенной линии
+ разработки. Итак, для начала мы рекомендем создать
+ <firstterm>корень проекта</firstterm> в репозитории,
+ каталог, содержащий данные этого проекта, и не содержащий
+ данных других проектов. Потом, каталог в каталоге каждого
+ прокта следует расположить подкаталог
+ <filename>trunk</filename>,содержащий основную линию
+ разработки, подкаталог <filename>branches</filename>,
+ содержащий создаваемые ветви разработки, и подкаталог
+ <filename>tags</filename>, в которому будут создаваться
+ метки. Конечно же, если репозиторий содержит только один
+ проект, корнем проекта может являться корень
+ репозитория.</para>
+ <!-- @ENGLISH {{{
<para>Here are some examples:</para>
+ @ENGLISH }}} -->
+ <para>Вот несколько примеров:</para>
<informalexample>
<screen>
@@ -300,21 +438,30 @@
</screen>
</informalexample>
+ <!-- @ENGLISH {{{
<para>We talk much more about tags and branches in
<xref linkend="svn.branchmerge"/>. For details and some
advice on how to set up repositories when you have multiple
projects, see <xref linkend="svn.branchmerge.maint.layout"/>.
Finally, we discuss project roots more in
<xref linkend="svn.reposadmin.projects.chooselayout"/>.</para>
+ @ENGLISH }}} -->
+ <para>Мы подробно поговорим о ветках и метках в
+ <xref linkend="svn.branchmerge"/>. Для информации о структуре
+ репозитория для нескольких проектов см. раздел
+ <xref linkend="svn.branchmerge.maint.layout"/>.
+ Наконец, мы обсудим корневые каталоги проектов в разделе
+ <xref linkend="svn.reposadmin.projects.chooselayout"/>.</para>
</sect2>
<!-- ===============================================================
-->
<sect2 id="svn.tour.importing.naming">
+ <!-- @ENGLISH {{{
<title>What's In a Name?</title>
-<!-- @TR }} -->
+ @ENGLISH }}} -->
+ <title>Имена в Subversion</title>
-<!-- @CHK {{ -->
<!-- @ENGLISH {{{
<para>Subversion tries hard not to limit the type of data you
can place under version control. The contents of files and
@@ -326,14 +473,15 @@
Subversion places restrictions on information it
stores.</para>
@ENGLISH }}} -->
- <para>Subversion очень старается не ограничивать количество типов
данных,
- которые можно поместить под контроль системы. Содержимое файлов и
- значения свойств хранятся и передаются в бинарном формате.
- О том, как объяснить Subversion, что для отдельного файла
- <quote>текстовые</quote> операции не имеют смысла, вы узнаете в
разделе
- <xref linkend="svn.advanced.props.special.mime-type"/>. Однако есть
- ситуации, когда Subversion накладывает некоторые ограничения на
хранимую
- информацию.</para>
+ <para>Subversion очень старается не ограничивать количество
+ типов данных, которые можно поместить под контроль системы.
+ Содержимое файлов и значения свойств хранятся и передаются в
+ бинарном формате. О том, как объяснить Subversion, что для
+ отдельного файла <quote>текстовые</quote> операции не имеют
+ смысла, вы узнаете в разделе
+ <xref linkend="svn.advanced.props.special.mime-type"/>.
+ Однако есть ситуации, когда Subversion накладывает некоторые
+ ограничения на хранимую информацию.</para>
<!-- @ENGLISH {{{
<para>Subversion internally handles certain bits of
@@ -347,13 +495,14 @@
encodings in use today).</para>
@ENGLISH }}} -->
<para>Внутри Subversion определенная информация — например,
- имена свойств, пути и лог-сообщения — обрабатывается как
текст
- в кодировке UTF-8. Однако это вовсе не означает обязательного
- использования UTF-8 при работе с Subversion. В случае если
- преобразования между UTF-8 и локальной кодировкой на компьютере
- могут быть выполнены (что справедливо для большинства испульзуемых
- сегодня кодировок), как правило, Subversion-клиент выполняет эти
- преобразования легко и прозрачно для пользователя.</para>
+ имена свойств, пути и лог-сообщения — обрабатывается как
+ текст в кодировке UTF-8. Однако это вовсе не означает
+ обязательного использования UTF-8 при работе с Subversion. В
+ случае если преобразования между UTF-8 и локальной кодировкой
+ на компьютере могут быть выполнены (что справедливо для
+ большинства испульзуемых сегодня кодировок), как правило,
+ Subversion-клиент выполняет эти преобразования легко и прозрачно
+ для пользователя.</para>
<!-- @ENGLISH {{{
<para>In WebDAV exchanges and older versions of some of
@@ -367,14 +516,15 @@
in the output of commands such as <command>svn log</command>
or <command>svn status</command>.</para>
@ENGLISH }}} -->
- <para>Кроме того, имена путей при WebDAV-транзакциях используются как
- значения XML-атрибутов, так же как и в некоторых собственных файлах
- Subversion. Это означает, что при указании путей могут
- использоваться только корректные для XML (1.0) символы. Также при
- указании путей Subversion запрещает использовать символы TAB, CR
- и LF, чтобы они не повреждали файлы различий и не искажали вывод
- таких команд как <xref linkend="svn.ref.svn.c.log"/> или <xref
- linkend="svn.ref.svn.c.status"/>.</para>
+ <para>Кроме того, имена путей при WebDAV-транзакциях используются
+ как значения XML-атрибутов, так же как и в некоторых собственных
+ файлах Subversion. Это означает, что при указании путей могут
+ использоваться только корректные для XML (1.0) символы. Также
+ при указании путей Subversion запрещает использовать символы
+ <literal>TAB</literal>, <literal>CR</literal> и
+ <literal>LF</literal>, чтобы они не повреждали файлы различий
+ и не искажали вывод таких команд как <command>svn log</command>
+ или <command>svn status</command>.</para>
<!-- @ENGLISH {{{
<para>While it may seem like a lot to remember, in practice
@@ -392,21 +542,22 @@
сложностей. Если ваши локальные установки совместимы с UTF-8 и
вы не используете специальных символов при указании путей, то
проблем при работе с Subversion у вас не возникнет. Клиент для
- командной строки немного в этом помогает — он автоматически
- корректирует недопустимые символы, встречающиеся в набранных URL,
- <quote>юридически правильными</quote> версиями для внутреннего
- использования.</para>
+ командной строки немного в этом помогает — он
+ автоматически корректирует недопустимые символы, встречающиеся
+ в набранных URL, <quote>юридически правильными</quote> версиями
+ для внутреннего использования.</para>
</sect2>
</sect1>
-<!-- @CHK }} -->
-<!-- @TR {{ -->
<!-- =================================================================
-->
<!-- =================================================================
-->
<!-- =================================================================
-->
<sect1 id="svn.tour.initial">
+ <!-- @ENGLISH {{{
<title>Creating a Working Copy</title>
+ @ENGLISH }}} -->
+ <title>Создание рабочей копии</title>
<indexterm>
<primary>svn</primary>
@@ -414,6 +565,7 @@
<tertiary>checkout</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>Most of the time, you will start using a Subversion
repository by performing a <firstterm>checkout</firstterm> of
your project. Checking out a directory from a repository
@@ -422,6 +574,13 @@
(that is, most recently created or modified) versions of the
directory and its children found in the Subversion
repository:</para>
+ @ENGLISH }}} -->
+ <para>В большинстве случаев использование репозитория Subversion
+ начинается с <firstterm>создания рабочей копии</firstterm>
+ проекта. При создании рабочей копии на локальной машине
+ создаётся каталог, содержащий саму свежую (если не заданы
+ дополнительные параметры) копию данных
+ соответствующего каталога репозитория:</para>
<informalexample>
<screen>
@@ -436,10 +595,15 @@
</screen>
</informalexample>
+ <!-- @ENGLISH {{{
<para>Although the preceding example checks out the trunk
directory, you can just as easily check out a deeper
subdirectory of a repository by specifying that subdirectory's
URL as the checkout URL:</para>
+ @ENGLISH }}} -->
+ <para>Хотя в предыдущем примере создаётся копия каталога trunk,
+ можно создать копию подкаталога любого уровня вложенности,
+ указав соответствующий URL:</para>
<informalexample>
<screen>
@@ -452,9 +616,7 @@
$
</screen>
</informalexample>
-<!-- @TR }} -->
-<!-- @CHK {{ -->
<!-- @ENGLISH {{{
<para>Since Subversion uses a copy-modify-merge model instead of
lock-modify-unlock (see <xref linkend="svn.basic.vsn-models"/>),
@@ -532,9 +694,8 @@
роль. Что бы вы ни делали, не удаляйте и не меняйте ничего в
служебной области! Subversion использует ее при управлении
рабочей копией.</para>
-<!-- @CHK }} -->
-<!-- @TR {{ -->
+ <!-- @ENGLISH {{{
<para>If you accidentally remove the <filename>.svn</filename>
subdirectory, the easiest way to fix the problem is to remove
the entire containing directory (a normal system deletion,
@@ -542,8 +703,17 @@
update</userinput> from a parent directory. The Subversion
client will download the directory you've deleted, with a
new <filename>.svn</filename> area as well.</para>
+ @ENGLISH }}} -->
+ <para>Если вы случайно удалили подкаталог <filename>.svn</filename>,
+ легче всего целиком удалить содержищий его каталог (обычное
+ удаление файлов, а не команда <command>svn delete</command>),
+ затем выполнить <userinput>svn update</userinput> из
+ родительского каталога. Клиент Subversion загрузит из хранилища
+ удаленный каталог, включая подкаталог
+ <filename>.svn</filename>.</para>
</sidebar>
+ <!-- @ENGLISH {{{
<para>Notice that in the previous pair of examples, Subversion
chose to create a working copy in a directory named for the
final component of the checkout URL. This occurs only as a
@@ -553,6 +723,13 @@
flexibility, though, allowing you to optionally specify the
local directory name that Subversion should use for the working
copy it creates. For example:</para>
+ @ENGLISH }}} -->
+ <para>Заметьте, что в предыдущих примерах, Subversion
+ выбирает последний элемент URL для именования каталога рабочей
+ копии. Это происходит в случае, если URL является единственным
+ аргументом, переданным команде <command>svn checkout</command>.
+ Клиент Subversion обладает большой гибкостью и даёт возможность
+ явно задать имя каталога рабочей копии. Например:</para>
<informalexample>
<screen>
@@ -567,14 +744,16 @@
</screen>
</informalexample>
+ <!-- @ENGLISH {{{
<para>If the local directory you specify doesn't yet
exist, that's okay—<command>svn checkout</command> will
create it for you.</para>
+ @ENGLISH }}} -->
+ <para>Если указанный локальный каталог не существует, команда
+ <command>svn checkout</command> создаст его.</para>
</sect1>
-<!-- @TR }} -->
-<!-- @CHK {{ -->
<!-- =================================================================
-->
<!-- =================================================================
-->
<!-- =================================================================
-->
@@ -602,16 +781,19 @@
<para>The typical work cycle looks like this:</para>
@ENGLISH }}} -->
<para>Типичный рабочий цикл выглядит примерно так:</para>
-<!-- @CHK }} -->
-<!-- @TR {{ -->
<orderedlist>
<listitem>
+ <!-- @ENGLISH {{{
<para><emphasis>Update your working copy.</emphasis> This
involves the use of the <command>svn update</command>
command.</para>
+ @ENGLISH }}} -->
+ <para><emphasis>Обновить рабочую копию.</emphasis> Предполагает
+ использование команды <command>svn update</command>.</para>
</listitem>
<listitem>
+ <!-- @ENGLISH {{{
<para><emphasis>Make your changes.</emphasis> The most common
changes that you'll make are edits to the contents of your
existing files. But sometimes you need to add, remove, copy
@@ -620,22 +802,44 @@
copy</command>, and <command>svn move</command> commands
handle those sorts of structural changes within the working
copy.</para>
+ @ENGLISH }}} -->
+ <para><emphasis>Внесение изменений.</emphasis> Чаще всего вы
+ будете редактировать существующие файлы. Но иногда будет
+ необходимо need to добавлять, удалять, копировать и
+ перемещять файлы и каталоги — команды <command>svn
+ add</command>, <command>svn delete</command>, <command>svn
+ copy</command>, и <command>svn move</command> сделают это
+ внутри рабочей копии.</para>
</listitem>
<listitem>
+ <!-- @ENGLISH {{{
<para><emphasis>Review your changes.</emphasis>
The <command>svn status</command> and <command>svn
diff</command> commands are critical to reviewing the
changes you've made in your working copy.</para>
+ @ENGLISH }}} -->
+ <para><emphasis>Анализ изменений.</emphasis>
+ Команды <command>svn status</command> и <command>svn
+ diff</command> очень важны при анализе изменений.</para>
</listitem>
<listitem>
+ <!-- @ENGLISH {{{
<para><emphasis>Fix your mistakes.</emphasis> Nobody's
perfect, so as you review your changes, you may spot
something that's not quite right. Sometimes the easiest way
to fix a mistake is start all over again from scratch.
The <command>svn revert</command> command restores a file
or directory to its unmodified state.</para>
+ @ENGLISH }}} -->
+ <para><emphasis>Исправление ошибок.</emphasis> Никто не
+ идеален, поэтому во время анализа изменений может оказаться,
+ что что-нибудь пошло не так. Иногда, легче всего начать с
+ чистого листа. Команда <command>svn revert</command>
+ восстанавливает файл или каталог в первоначальном
+ (немодифицированном) виде.</para>
</listitem>
<listitem>
+ <!-- @ENGLISH {{{
<para><emphasis>Resolve any conflicts (merge others'
changes).</emphasis> In the time it takes you to make and
review your changes, others might have made and published
@@ -646,13 +850,30 @@
this. If this results in local conflicts, you'll need to
resolve those using the <command>svn resolve</command>
command.</para>
+ @ENGLISH }}} -->
+ <para><emphasis>Устранение конфлитов (слияние изменений).
+ </emphasis> К тому времени, как будут готовы ваши изменения,
+ другие уже могут опубликовать собственные изменния. Вы
+ захотите интегрировать эти изменения в свою рабочую копию
+ чтобы избежать потенциальных проблем при публикации своих
+ изменний. Снова, команда <command>svn update</command>
+ поможет вам в этом. При наличии локальных конфликтов, их
+ можно устранить командой <command>svn resolve</command>.
+ </para>
</listitem>
<listitem>
+ <!-- @ENGLISH {{{
<para><emphasis>Publish (commit) your changes.</emphasis>
The <command>svn commit</command> command transmits your
changes to the repository where, if they are accepted, they
create the newest versions of all the things you modified.
Now others can see your work, too!</para>
+ @ENGLISH }}} -->
+ <para><emphasis>публикация (commit) изменений.</emphasis>
+ Команда <command>svn commit</command> передаёт ваши изменения
+ в репозиторий где они, если одобрены, создадют новую версию
+ всех модифицированных элементов. Теперь другие тоже увидят
+ ваш труд!</para>
</listitem>
</orderedlist>
@@ -669,6 +890,7 @@
<tertiary>update</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>When working on a project that is being modified via
multiple working copies, you'll want to update your working
copy to receive any changes committed from other working
@@ -680,10 +902,25 @@
directories, so it's best to have the latest versions
of all your project's files and directories before making new
changes of your own.</para>
+ @ENGLISH }}} -->
+ <para>При работе над проектом, изменяемым в нескольких рабочих
+ копиях, вы захотите обновить свою рабочую копию для получения
+ изменений из других рабочих копий с момента последнего
+ обновления. Это могут быть как изменния других членов команды,
+ так и ваши собственные изменения, выполненные с другого
+ компьютера. Для сохранности данных, Subversion не позволяет
+ фиксировать новые изменения устаревших файлов и каталогов,
+ таким образом лучше иметь свежую версию данных, перед
+ внесением изменений.</para>
+ <!-- @ENGLISH {{{
<para>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>
<informalexample>
<screen>
@@ -695,25 +932,44 @@
</screen>
</informalexample>
+ <!-- @ENGLISH {{{
<para>In this case, it appears that someone 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>When the server sends changes to your working copy via
<command>svn update</command>, 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. To find out what these
letters mean, run <userinput>svn help update</userinput> or
see <xref linkend="svn.ref.svn.c.update"/>.</para>
+ @ENGLISH }}} -->
+ <para>Когда сервер передаёт вашей рабочей копии изменения
+ при выполнении команды <command>svn update</command>,
+ буквенный код, отображаемый перед каждым элементом позволяет
+ узнать, какое действие с ним совершила Subversion. Чтобы узнать
+ что означают эти символы, выполните команду <userinput>svn
+ help update</userinput> или прочитайте
+ <xref linkend="svn.ref.svn.c.update"/>.</para>
</sect2>
<!-- ===============================================================
-->
<sect2 id="svn.tour.cycle.edit">
+ <!-- @ENGLISH {{{
<title>Make Your Changes </title>
+ @ENGLISH }}} -->
+ <title>Внесение изменений</title>
+ <!-- @ENGLISH {{{
<para>Now you can get to work and make changes in your working
copy. You can make two kinds of changes to your working
copy: <firstterm>file changes</firstterm> and <firstterm>tree
@@ -732,9 +988,33 @@
addition, copying, or moving. These changes may take place
immediately in your working copy, but no additions or removals
will happen in the repository until you commit them.</para>
+ @ENGLISH }}} -->
+ <para>Теперь можно приступить к работе и начать вносить
+ изменения в рабочую копию. Изменения бывают двух видов:
+ <firstterm>изменения файлов</firstterm> и
+ <firstterm>изменения структуры</firstterm>. Нет необходимости
+ уведомлять Subversion об изменениях файлов — просто
+ измените файл соответствующим инструментов, как вы обычно это
+ делаете обычно. Subversion автоматически определеит, какие
+ файлы были изменены, к тому же, она обрабатывает бинарные
+ файлы также легко, как текстовые — и также эффективно.
+ Структурные изменения обрабатываюся по-другому. Такие
+ изменения включают добавление и удаление файллов,
+ переименовывание файлов или каталогов, и копирование файлов и
+ каталогов. Для структурных изменений вы используете операции
+ Subversion для <quote>планирования</quote> операций удаления,
+ добавления, копирования или перемещения. Эти изменения могут
+ немедленно отразится в вашей рабочей копии, но никаких
+ изменений не будет произведено в репозитории, пока вы не
+ их зафиксируете.</para>
+<!-- @CHK }} -->
+<!-- @TR {{ -->
<sidebar>
+ <!-- @ENGLISH {{{
<title>Versioning Symbolic Links</title>
+ @ENGLISH }}} -->
+ <title>Версионирование символических ссылок</title>
<para>On non-Windows platforms, Subversion is able to version
files of the special type <firstterm>symbolic
@@ -758,9 +1038,15 @@
can't be used as a symlink on a Windows system, it also
won't prevent Windows users from performing their other
Subversion-related activities.</para> </sidebar>
+<!-- @TR }} -->
+<!-- @CHK {{ -->
+ <!-- @ENGLISH {{{
<para>Here is an overview of the five Subversion subcommands
that you'll use most often to make tree changes:</para>
+ @ENGLISH }}} -->
+ <para>Вот обзор пяти самых частоиспользуемых команд
+ Subversion для структурных изменений:</para>
<variablelist>
@@ -772,6 +1058,7 @@
<secondary>subcommands</secondary>
<tertiary>add</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>Use this to schedule the file, directory, or
symbolic link <filename>FOO</filename> to be added to
the repository. When you next
@@ -781,7 +1068,18 @@
underneath <filename>FOO</filename> will be scheduled
for addition. If you want only to add
<filename>FOO</filename> itself, pass the
- <option>--depth=empty</option> option.</para>
+ <option>-ﳢ-depth=empty</option> option.</para>
+ @ENGLISH }}} -->
+ <para>Запланировать добавление файла, кталога, или
+ символической ссылки <filename>FOO</filename> в
+ репозиторий. При фиксации изменений,
+ <filename>FOO</filename> станет элементом
+ родительского каталога. Если
+ <filename>FOO</filename> является
+ каталогом, всё его содержимое будет отмечено для
+ добавления. Если вы хотите добавить только сам
+ каталог <filename>FOO</filename>, передайте опцию
+ <option>--depth=empty</option>.</para>
</listitem>
</varlistentry>
@@ -793,6 +1091,7 @@
<secondary>subcommands</secondary>
<tertiary>delete</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>Use this to schedule the file, directory, or
symbolic link <filename>FOO</filename> to be deleted
from the repository. If <filename>FOO</filename> is a
@@ -810,6 +1109,24 @@
again present in <literal>HEAD</literal>, see
<xref linkend="svn.branchmerge.basicmerging.resurrect"
/>.</para></footnote></para>
+ @ENGLISH }}} -->
+ <para>Запланировать удаление файла, каталога или
+ символической ссыки <filename>FOO</filename> из
+ репозитория. Если <filename>FOO</filename> —
+ файл или ссылка, удаление из рабочей копии будет
+ произведено немедленно. Если <filename>FOO</filename>
+ — каталог, будет запланировано его удаление.
+ При фиксации изменений, каталог <filename>FOO</filename>
+ будет полностью удален из рабочей копии и из репозитория.
+ <footnote><para>Конечно же, ничего никогда не удаляется
+ из репозитория в целом, только из головной —
+ <literal>HEAD</literal> — ревизии. Вы по прежнему
+ будете иметь доступ к удаленным элементам в предыдущих
+ ревизиях. Если вы хотите восстановить элемент, чтобы он
+ снова присутствовал в ревизии <literal>HEAD</literal>,
+ смотрите раздел
+ <xref linkend="svn.branchmerge.basicmerging.resurrect"
+ />.</para></footnote></para>
</listitem>
</varlistentry>
@@ -821,6 +1138,7 @@
<secondary>subcommands</secondary>
<tertiary>copy</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>Create a new item <filename>BAR</filename> as a
duplicate of <filename>FOO</filename> and automatically
schedule <filename>BAR</filename> for addition. When
@@ -829,7 +1147,17 @@
originally come from <filename>FOO</filename>).
<command>svn copy</command> does not create intermediate
directories unless you pass the
- <option>--parents</option> option.</para>
+ <option>-ﳢ-parents</option> option.</para>
+ @ENGLISH }}} -->
+ <para>Создаёт новый элемет <filename>BAR</filename> как
+ копию элемента <filename>FOO</filename> и автоматически
+ помечает <filename>BAR</filename> для добавления. Когда
+ <filename>BAR</filename> будет добавлен в репозиторий
+ при фиксации, в его истории будет записано, что он
+ является копией элемента <filename>FOO</filename>.
+ Команада <command>svn copy</command> не создаёт
+ промежуточных каталогов, если не задана опция
+ <option>--parents</option>.</para>
</listitem>
</varlistentry>
@@ -841,6 +1169,7 @@
<secondary>subcommands</secondary>
<tertiary>move</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>This command is exactly the same as running
<userinput>svn copy FOO BAR; svn delete FOO</userinput>.
That is, <filename>BAR</filename> is scheduled for
@@ -848,7 +1177,16 @@
<filename>FOO</filename> is scheduled for removal.
<command>svn move</command> does not create intermediate
directories unless you pass the
- <option>--parents</option> option.</para>
+ <option>-ﳢ-parents</option> option.</para>
+ @ENGLISH }}} -->
+ <para>Эквивалент запуска
+ <userinput>svn copy FOO BAR; svn delete FOO</userinput>.
+ Планируется добавление <filename>BAR</filename> как
+ копии <filename>FOO</filename>, и
+ <filename>FOO</filename> отмечается для удаления.
+ <command>svn move</command> не создаёт
+ промежуточных каталогов, если не задана опция
+ <option>--parents</option>.</para>
</listitem>
</varlistentry>
@@ -860,15 +1198,23 @@
<secondary>subcommands</secondary>
<tertiary>mkdir</tertiary>
</indexterm>
+ <!-- @ENGLISH {{{
<para>This command is exactly the same as running
<userinput>mkdir FOO; svn add FOO</userinput>. That is,
a new directory named <filename>FOO</filename> is
created and scheduled for addition.</para>
+ @ENGLISH }}} -->
+ <para>Эквивалент исполения команд
+ <userinput>mkdir FOO; svn add FOO</userinput>. Создаётся
+ новый каталог <filename>FOO</filename> и планируется
+ его добавление.</para>
</listitem>
</varlistentry>
</variablelist>
+<!-- @CHK }} -->
+<!-- @TR {{ -->
<sidebar>
<title>Changing the Repository Without a Working Copy</title>
@@ -904,12 +1250,31 @@
<!-- ===============================================================
-->
<sect2 id="svn.tour.cycle.examine">
+ <!-- @ENGLISH {{{
<title>Review Your Changes</title>
+ @ENGLISH }}} -->
+ <title>Анализ изменений</title>
<indexterm>
<primary>log message</primary>
</indexterm>
+ <!-- @ENGLISH {{{
+ <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
+ examining your changes before you commit, you can compose a
+ more accurate <firstterm>log message</firstterm> (a
+ human-readable description of the committed changes stored
+ alongside those changes in the repository). You may also
+ discover that you've inadvertently changed a file, and that
+ you need to undo that change before committing. Additionally,
+ this is a good opportunity to review and scrutinize changes
+ before publishing them. You can see an overview of the
+ changes you've made by using the <command>svn status</command>
+ command, and you can dig into the details of those changes by
+ using the <command>svn diff</command> command.</para>
+ @ENGLISH }}} -->
<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
More information about the svnbook-dev
mailing list