Профессиональное использование Subversion


Приложение C. Инструменты от сторонних разработчиков
Subversion's modular design (covered in «Layered Library Design») and the availability of language bindings (as described in «Using Languages Other than C and C++») make it a likely candidat...
Using External Differencing Tools
The presence of --diff-cmd and --diff3-cmd options, and similarly named runtime configuration parameters (see «Config»), can lead to a false notion of how easy it is to use external diffe...
Замечание
The decision on when to fire off a contextual diff or merge as part of a larger Subversion operation is made entirely by Subversion, and is affected by, among other things, whether or...
External diff
Subversion calls external diff programs with parameters suitable for the GNU diff utility, and expects only that the external program return with a successful error code. For most alte...
External diff3
Subversion calls external merge programs with parameters suitable for the GNU diff3 utility, expecting that the external program return with a successful error code and that the full f...
Externals Definitions
Sometimes it is useful to construct a working copy that is made out of a number of different checkouts. For example, you may want different subdirectories to come from different locations...
Подсказка
You should strongly consider using explicit revision numbers in all of your externals definitions. Doing so means that you get to decide when to pull down a different snapshot of exter...
Глава 7. Профессиональное использование Subversion
СодержаниеПараметры времени выполненияСтруктура области конфигурацииКонфигурация и реестр WindowsПараметры конфигурацииServersConfigСвойстваЗачем нужны свойства?Использование свойствСпециальные св...
Параметры времени выполнения
Subversion имеет множество контролируемых пользователем опциональных параметров поведения. Возможно пользователь хотел бы применять некоторые из этих параметров во всех операциях Subversi...
Структура области конфигурации
Во время первого запуска клиент для командной строки svn создает отдельную для каждого пользователя область конфигурации. На Unix-подобных системах эта директория называется .subversio...
Конфигурация и реестр Windows
В дополнение к обычным INI-настройкам, Subversion-клиент, работающий на платформе Windows, может использовать для хранения настроек Windows-реестр. Имена параметров и их значения точно...
Параметры конфигурации
В этом разделе рассматриваются поддерживаемые Subversion параметры времени выполнения....
Servers
В файле servers находятся настройки, относящиеся к работе Subversion через сеть. Он содержит два специальных раздела — groups и global. Раздел groups представляет собой просто п...
Config
Остальные доступные параметры времени выполнения Subversion, не относящиеся к сетевой работе, находятся в файле config. В данный момент существует всего несколько параметров, но они...
Localization
Localization is the act of making programs behave in a region-specific way. When a program formats numbers or dates in a way specific to your part of the world, or prints messages (or acc...
Understanding locales
Most modern operating systems have a notion of the «current locale»—that is, the region or country whose localization conventions are honored. These conventions—typically chosen by som...
Subversion's use of locales
The Subversion client, svn, honors the current locale configuration in two ways. First, it notices the value of the LC_MESSAGES variable and attempts to print all messages in the speci...
Locking
Subversion's «copy-modify-merge» model is optimal when users are collaborating on projects that consist of line-based text files, such as program source code. However, as discussed in Ког...
Creating locks
In the Subversion repository, a lock is a piece of metadata which grants exclusive access to one user to change a file. This user is said to be the lock owner. Each lock also has a...
Discovering locks
When a commit fails due to someone else's locks, it's fairly easy to learn about them. The easiest of these is svn status --show-updates:$ whoami sally $ svn status --show-updates M...
Breaking and stealing locks
A repository lock isn't sacred; it can be released not only by the person who created it, but by anyone at all. When somebody other than the original lock creator destroys a lock, we r...
Lock Communication
We've seen how svn lock and svn unlock can be used to create, release, break, and steal locks. This satisfies the goal of serializing commit access to a file. But what about the lar...
Peg and Operative Revisions
The ability to copy, move, and rename files and directories; to be able to create an object, then delete it and then add a new one at the same path—those are operations which we perform o...
Свойства
Мы уже рассмотрели как Subversion сохраняет и получает разные версии файлов и директорий из хранилища. Целые главы были посвящены этой самой фундаментальной части функциональных возможнос...
Зачем нужны свойства?
Свойства могут быть очень полезной добавкой к рабочей копии. Фактически, сама Subversion использует свойства для хранения служебной информации и определения того, какие действия необходимо...
Использование свойств
Команда svn предоставляет несколько способов добавления или изменения свойств файлов и директорий. Свойства с короткими, читаемыми значениями, наверное проще всего добавить указав имя...
Специальные свойства
У Subversion нет каких то отдельных правил для свойств — использовать их можно как угодно. Единственно что Subversion требует от вас не использовать в названиях свойств префикс svn:. П...
Svn:executable
Свойство svn:executable для версионированного файла контролирует в полуавтоматическом режиме бит файловой системы, разрешающий исполнение. Это свойство не имеет определенного значен...
Svn:mime-type
Свойство svn:mime-type имеет в Subversion несколько значений. Кроме общего назначения хранения информации о файле согласно Универсальному Расширению Интернет Почты (MIME), значение...
Svn:ignore
The svn:ignore property contains a list of file patterns which certain Subversion operations will ignore. Perhaps the most commonly used special property, it works in conjunction wi...
Svn:keywords
Subversion has the ability to substitute keywords—pieces of useful, dynamic information about a versioned file—into the contents of the file itself. Keywords generally describe...
Svn:eol-style
Unless otherwise noted using a versioned file's svn:mime-type property, Subversion assumes the file contains human-readable data. Generally speaking, Subversion only uses this knowl...
Svn:externals
The svn:externals property contains instructions for Subversion to populate a versioned directory with one or more other checked-out Subversion working copies. For more information...
Svn:special
The svn:special property is the only svn: property that isn't meant to be directly set or modified by users. Subversion automatically sets this property whenever a «special» object...
Svn:needs-lock
This property is used to signify that the file it's attached to ought to be locked before editing. The value of the property is irrelevant; Subversion will normalize its value to *....
Automatic Property Setting
Properties are a powerful feature of Subversion, acting as key components of many Subversion features discussed elsewhere in this and other chapters—textual diff and merge support, key...
Subversion Repository URLs
As illustrated throughout this book, Subversion uses URLs to identify versioned resources in Subversion repositories. For the most part, these URLs use the standard syntax, allowing for s...
Vendor branches
As is especially the case when developing software, the data that you maintain under version control is often closely related to, or perhaps dependent upon, someone else's data. Generally,...
General Vendor Branch Management Procedure
Managing vendor branches generally works like this. You create a top-level directory (such as /vendor) to hold the vendor branches. Then you import the third party code into a subdirec...
Svn_load_dirs.pl
Vendor drops that contain more than a few deletes, additions and moves complicate the process of upgrading to each successive version of the third-party data. So Subversion supplies th...
Глава 2. Основные понятия
СодержаниеХранилищеМодели версионированияПроблема разделения файловМодель Блокирование-Изменение-РазблокированиеМодель Копирование-Изменение-СлияниеSubversion в действииРабочие копииПравкиКак рабо...
Хранилище
Subversion является централизованной системой для разделения информации. В ее основе хранилище, являющееся центром хранения данных. Хранилище хранит информацию в форме дерева файлов — тип...
Subversion в действии
Настало время перейти от абстракций к конкретике. В этом разделе мы покажем реальные примеры использования Subversion....
Рабочие копии
Вы уже читали о рабочих копиях; теперь мы покажем как Subversion-клиент создает и использует их.Рабочая копия Subversion представляет собой обычное дерево каталогов на вашем компьютере, со...
Правки
Операция svn commit может опубликовать изменения любого количества файлов и каталогов за одну атомарную операцию. В своей рабочей копии вы можете менять содержимое файлов, создавать, у...
Как рабочие копии отслеживают хранилище
В служебном каталоге .svn/ для каждого файла рабочего каталога Subversion записывает информацию о двух важнейших свойствах:на какой правке основан ваш рабочий файл (это называется раб...
Смешивание правок в рабочих копиях
Subversion старается быть гибкой настолько, насколько это возможно. Например, существует возможность иметь рабочую копию, содержащую файлы и каталоги, имеющие смешанные номера рабочих прав...
Обновления и фиксации отделены друг от друга
Одно из фундаментальных правил Subversion заключается в том, что «передающее» действие не приводит к «принимаемому», и наоборот. То, что вы готовы внести изменения в хранилище, не о...
Смешивание правок — это нормально
Фактически, каждый раз при выполнении svn commit правки рабочей копии смешиваются. Только что зафиксированные элементы отмечаются как имеющие больший номер рабочей правки, чем вс...
Смешивание правок — это полезно
Если у вас очень большой проект, вы можете найти полезным, время от времени принудительно «возвращать» части рабочей копии к более ранним правкам; как это делается, вы узнаете в...
Смешивание правок имеет ограничения
Несмотря на то, что в рабочей копии можно использовать смешивание правок, у этой гибкости существуют ограничения.Во-первых, нельзя зафиксировать удаление устаревшего файла или ка...
Подводя итоги
В этой главе мы рассмотрели ряд фундаментальных вещей о Subversion:Мы ввели такие понятия, как центральное хранилище, рабочая копия и массив правок хранилища.Мы рассмотрели на нескольких п...
Модели версионирования
Основной задачей системы управления версиями является обеспечение совместного редактирования и распределения информации. Однако разные системы используют разные способы для достижения это...
Проблема разделения файлов
Всем системам контроля версий приходится решать одну и ту же основную проблему: как предоставить пользователям возможность совместного использования информации, при этом, не позволяя им...
Модель Блокирование-Изменение-Разблокирование
Для того, что бы несколько авторов не мешало друг другу многие системы управления версиями применяют модель блокирование-изменение-разблокирование. Эта модель запрещает одновременное р...
Модель Копирование-Изменение-Слияние
Subversion, CVS и другие системы управления версиями пользуются моделью копирование-изменение-слияние в качестве альтернативы блокированию. В этой модели каждый пользовательский кл...
Типовые примеры использования
Для ветвления и команды svn merge существует множество применений, в этом раздели описаны наиболее типичные из тех с которыми вы можете столкнуться....
Полное объединение двух веток
Что бы завершить наш текущий пример, заглянем немного в перед. Предположим, прошло несколько дней и как в главную линию разработки так и вашу личную ветку было внесено множество измене...
Подсказка
Удобно для определения правки, в которой ветка была создана («базовой» правки ветки) использовать параметр --stop-on-copy при запуске svn log. При обычном запуске, эта команда показ...
Отмена изменений
Еще одним типичным применением для svn merge является откат изменений, которые уже были зафиксированы. Предположим вы спокойно работаете в рабочей копии /calc/trunk и выясняете, что...
Восстановление удаленных элементов
Отличным свойством системы контроля версия является то, что информация никогда не теряется. При удалении файла или директории, элемент исчезает из правки HEAD но продолжает существовать...
Типовые приемы при использовании веток
Управление версиями чаще всего используется при разработке программного обеспечения, поэтому здесь мы вкратце рассмотрим два, наиболее часто используемые командами программистов, прием...
Ветки релизов
Большинство программного обеспечения имеет типовой жизненный цикл: написание кода, тестирование, выпуск, повторный цикл. При таком подходе возникают две проблемы. Во-первых, разрабо...
Функциональные ветки
Функциональная ветка является доминирующим примером в этой главе, над такой веткой вы работаете пока Салли работает над /trunk. Это временная ветка, которая создается для работы над...
Копирование изменений между ветками
Сейчас вы и Салли работаете над параллельными ветками проекта: вы работаете над своей собственной веткой, а Салли работает над главной линией разработки (trunk).В проектах, имеющих большое к...
Копирование отдельных изменений
В предыдущем пункте мы указали, что и вы и Салли, в месте, в разных ветках вносите изменения в integer.c. Если посмотреть на лог сообщение Салли для правки 344, вы увидите, что она исп...
Ключевые понятия, стоящие за слиянием
Вы увидели примеры использования svn merge, продолжим рассмотрение. Если вы чувствуете не уверенность в том как собственно работает слияние, то в этом вы не одиноки. Многие пользовател...
Ручной контроль слияния
На первый взгляд объединить изменения просто, однако на практике могут возникнуть трудности. Проблема заключается в том, что при многократном объединении изменений одной ветки с дру...
Предварительные просмотр при объединении
Учитывая, что результатом слияния являются локальные модификации, такая операция не является опасной. Если в начале, при выполнении объединения вы ошиблись, просто отмените изменени...
Конфликты при объединении
Так же как и команда svn update, svn merge внедряет изменения в рабочую копию. А следовательно тоже может создавать конфликты. Однако конфликты, создаваемые svn merge иногда от...
Учитывать или игнорировать происхождение
При общении разработчиков, использующих Subversion очень часто можно услышать упоминание термина происхождение. Это слово используется для описания отношений между двумя объектами х...
Глава 4. Ветвление и слияние
СодержаниеЧто такое ветка?Использование ветокСоздание веткиРабота с веткойКлючевые идеи, стоящие за веткамиКопирование изменений между веткамиКопирование отдельных измененийКлючевые понятия, стоящ...
Что такое ветка?
Предположим, что ваша работа заключается в сопровождении документа, например какого-то руководства, для подразделений в вашей компании. Однажды различные подразделения запросят у вас одно...
Поддержка веток
Сейчас вы уже понимаете, что Subversion очень гибкая система. Учитывая то, что ветки и метки имеют одну и ту же основу (копии директорий), а также то, что ветки и метки являются обычными эле...
Структура хранилища
Существует несколько стандартных, рекомендуемых способов организации хранилища. Как правило, создается директория trunk, в которой находится «главная линия» разработки, директория...
Продолжительность жизни информации
Еще одним замечательным свойством модели Subversion является то, что ветки и метки могут иметь конечную продолжительность жизни, так же как и все другие версионированные элементы. Напр...
Подводя итоги
В этой главе было рассмотрено очень многое. Мы обсудили концепцию меток и веток, показали как Subversion реализует эти понятия используя команду svn copy. Показали, как svn merge копирует...
Переключение рабочей копии
Команда svn switch трансформирует существующую рабочую копию в другую ветку. Несмотря на то, что при работе с ветками эта команда не является крайне необходимой, она значительно облегчает...
Метки
Еще одним понятием, свойственным управлению версиями является метка. Метка является просто «снимком» проекта в определенный момент времени. В Subversion эта идея уже, кажется, повсюду. Ка...
Создание простой метки
И снова приходит на помощь svn copy. Если вам нужно сделать снимок /calc/trunk в точно таком виде как в правке HEAD, сделайте копию этой директории:$ svn copy http://svn.example.com/rep...
Создание комплексной метки
Иногда вам будет необходим более сложный «снимок», чем одна единственная директория в одной правке.Например, представим, что ваш проект гораздо больше, чем наш пример calc: допустим он сод...
Использование веток
К этому моменту вы должны понимать как в хранилище, при каждой фиксации, создается полностью новое дерево файлов (называемое «правка»). Если нет, то вернитесь назад и прочитайте раздел «П...
Создание ветки
Создать ветку очень просто — при помощи команды svn copy делаете в хранилище копию проекта. Subversion может копировать не только отдельные файлы но и директории. Итак, вам нужно сдела...
Работа с веткой
После создания ветки проекта, можно создать новую рабочую копию для начала ее использования:$ svn checkout http://svn.example.com/repos/calc/branches/my-calc-branch A my-calc-branch/Makefile A...
Ключевые идеи, стоящие за ветками
Два важных понятия, которые вы должны запомнить из этого раздела.В отличие от других систем управления версиями, ветки в Subversion существуют в хранилище не в отдельном измерении, а...
Приложение D. Copyright
Copyright (c) 2002-2005 Ben Collins-Sussman, Brian W. Fitzpatrick, C. Michael Pilato. This work is licensed under the Creative Commons Attribution License. To view a copy of this license, visit ht...
Contributing to Subversion
The official source of information about the Subversion project is, of course, the project's website at http://subversion.tigris.org/. There you can find information about getting access...
Join the Community
The first step in community participation is to find a way to stay on top of the latest happenings. To do this most effectively, you will want to subscribe to the main developer discus...
Get the Source Code
To edit the code, you need to have the code. This means you need to check out a working copy from the public Subversion source repository. As straightforward as that might sound, the t...
Become Familiar with Community Policies
Now that you have a working copy containing the latest Subversion source code, you will most certainly want to take a cruise through the «Hacker's Guide to Subversion», which is availa...
Make and Test Your Changes
With the code and community policy understanding in hand, you are ready to make your changes. It is best to try to make smaller but related sets of changes, even tackling larger tasks...
Donate Your Changes
After making your modifications to the source code, compose a clear and concise log message to describe those changes and the reasons for them. Then, send an email to the developers li...
Глава 8. Информация для разработчиков
СодержаниеLayered Library DesignRepository LayerRepository Access LayerRA-DAV (Repository Access Using HTTP/DAV)RA-SVN (Custom Protocol Repository Access)RA-Local (Direct Repository Access)Your RA...
Layered Library Design
Subversion has a modular design, implemented as a collection of C libraries. Each library has a well-defined purpose and interface, and most modules are said to exist in one of three main...
Repository Layer
When referring to Subversion's Repository Layer, we're generally talking about two libraries—the repository library, and the filesystem library. These libraries provide the storage and...
Repository Access Layer
If the Subversion Repository Layer is at «the other end of the line», the Repository Access Layer is the line itself. Charged with marshalling data between the client libraries and the...
RA-DAV (Repository Access Using HTTP/DAV)
The libsvn_ra_dav library is designed for use by clients that are being run on different machines than the servers with which they communicating, specifically servers reached using...
RA-SVN (Custom Protocol Repository Access)
In addition to the standard HTTP/WebDAV protocol, Subversion also provides an RA implementation that uses a custom protocol. The libsvn_ra_svn module implements its own network sock...
RA-Local (Direct Repository Access)
Not all communications with a Subversion repository require a powerhouse server process and a network layer. For users who simply wish to access the repositories on their local disk...
Your RA Library Here
For those who wish to access a Subversion repository using still another protocol, that is precisely why the Repository Access Layer is modularized! Developers can simply write a ne...
Client Layer
On the client side, the Subversion working copy is where all the action takes place. The bulk of functionality implemented by the client-side libraries exists for the sole purpose of m...
Inside the Working Copy Administration Area
As we mentioned earlier, each directory of a Subversion working copy contains a special subdirectory called .svn which houses administrative data about that working copy directory. Subver...
The Entries File
Perhaps the single most important file in the .svn directory is the entries file. The entries file is an XML document which contains the bulk of the administrative information abou...
Pristine Copies and Property Files
As mentioned before, the .svn directory also holds the pristine «text-base» versions of files. Those can be found in .svn/text-base. The benefits of these pristine copies are multip...
Programming with Memory Pools
Almost every developer who has used the C programming language has at some point sighed at the daunting task of managing memory usage. Allocating enough memory to use, keeping track of th...
Using the APIs
Developing applications against the Subversion library APIs is fairly straightforward. All of the public header files live in the subversion/include directory of the source tree. These he...
The Apache Portable Runtime Library
Along with Subversion's own datatypes, you will see many references to datatypes that begin with apr_—symbols from the Apache Portable Runtime (APR) library. APR is Apache's portabilit...
URL and Path Requirements
With remote version control operation as the whole point of Subversion's existence, it makes sense that some attention has been paid to internationalization (i18n) support. After all,...
Using Languages Other than C and C++
If you are interested in using the Subversion libraries in conjunction with something other than a C program—say a Python or Perl script—Subversion has some support for this via the Si...
WebDAV
WebDAV (shorthand for «Web-based Distributed Authoring and Versioning») is an extension of the standard HTTP protocol designed to make the web into a read/write medium, instead of the bas...
Authentication
With CVS's pserver, you are required to «login» to the server before any read or write operation—you even have to login for anonymous operations. With a Subversion repository using Apache...
Binary Files and Translation
In the most general sense, Subversion handles binary files more gracefully than CVS does. Because CVS uses RCS, it can only store successive full copies of a changing binary file. Subvers...
Branches and Tags
Subversion doesn't distinguish between filesystem space and «branch» space; branches and tags are ordinary directories within the filesystem. This is probably the single biggest mental hu...
Внимание
Since Subversion treats branches and tags as ordinary directories, always remember to check out the trunk (http://svn.example.com/repos/calc/trunk/) of your project, and not the pro...
Conflict Resolution
CVS marks conflicts with in-line «conflict markers», and prints a C during an update. Historically, this has caused problems, because CVS isn't doing enough. Many users forget about (or d...
Converting a Repository from CVS to Subversion
Perhaps the most important way to familiarize CVS users with Subversion is to let them continue to work on their projects using the new system. And while that can be somewhat accomplished...
Directory Versions
Subversion tracks tree structures, not just file contents. It's one of the biggest reasons Subversion was written to replace CVS.Here's what this means to you, as a former CVS user:The svn a...
More Disconnected Operations
In recent years, disk space has become outrageously cheap and abundant, but network bandwidth has not. Therefore, the Subversion working copy has been optimized around the scarcer resourc...
Приложение A. Subversion для пользователей CVS
СодержаниеRevision Numbers Are Different NowDirectory VersionsMore Disconnected OperationsDistinction Between Status and UpdateStatusUpdateBranches and TagsMetadata PropertiesConflict ResolutionBi...
Revision Numbers Are Different Now
In CVS, revision numbers are per-file. This is because CVS stores its data in RCS files; each file has a corresponding RCS file in the repository, and the repository is roughly laid out a...
Versioned Modules
Unlike CVS, a Subversion working copy is aware that it has checked out a module. That means that if somebody changes the definition of a module (e.g. adds or removes components), then a c...
Metadata Properties
A new feature of Subversion is that you can attach arbitrary metadata (or «properties») to files and directories. Properties are arbitrary name/value pairs associated with files and direc...
Distinction Between Status and Update
In Subversion, we've tried to erase a lot of the confusion between the cvs status and cvs update commands.The cvs status command has two purposes: first, to show the user any local modifi...
Status
svn status prints all files that have local modifications. By default, the repository is not contacted. While this subcommand accepts a fair number of options, the following are the mo...
Update
svn update updates your working copy, and only prints information about files that it updates.Subversion has combined the CVS P and U codes into just U. When a merge or conflict occurs...
Предисловие
Скверный список ответов на часто задаваемые вопросы (ЧаВо) состоит не из тех вопросов, которые были заданы на самом деле, а из тех, на которые автору такого списка хотелось бы дать ответ...
Архитектура Subversion
Общий взгляд на устройство Subversion показан на рисунке 1.1, «Архитектура Subversion».Рисунок 1.1. Архитектура SubversionНа одной стороне схемы изображено хранилище Subversion, в котором х...
Компоненты Subversion
Установленная Subversion имеет определенное количество компонентов. Ниже перечисленное - краткий обзор того, что вы получаете. Не тревожьтесь если краткие описания заставляют вас чесать заты...
Возможности Subversion
Обсуждать возможности Subversion удобнее всего в разрезе её улучшений по сравнению с CVS. Суть некоторых рассматриваемых здесь возможностей может быть не совсем понятна читателям, которые...
История Subversion
В начале 2000 года компания CollabNet, Inc. (http://www.collab.net) решила начать разработку программного обеспечения, призванного прийти на смену CVS, и стала искать людей, способных решить...
Глава 1. Введение
СодержаниеЧто такое Subversion?История SubversionВозможности SubversionАрхитектура SubversionУстановка SubversionКомпоненты SubversionБыстрый стартУправление версиями — это искусство управления из...
Что такое Subversion?
Subversion — это свободная система управления версиями с открытым исходным кодом. Subversion позволяет управлять файлами и каталогами во времени. Дерево файлов помещается в центральное хр...
Установка Subversion
Subversion построена на портабельном слое под названием APR (the Apache Portable Runtime library). Библиотека APR предоставляет все интерфейсы, необходимые для функционирования Subversion по...
Быстрый старт
Некоторые испытывают трудности поглощения новой технологии читая приближение «с верху вниз», предлагаемое этой книгой. Этот раздел представляет собой очень короткое введение в Subversion...
Замечание
Последующий пример предполагает наличие у вас работающих Subversion клиента для командной строки svn и инструмента администрирования svnadmin. Кроме этого он рассчитан на то, что вы ис...
Благодарности
This book would not be possible (nor very useful) if Subversion did not exist. For that, the authors would like to thank Brian Behlendorf and CollabNet for the vision to fund such a risky...
From Ben Collins-Sussman
Thanks to my wife Frances, who, for many months, got to hear, «But honey, I'm still working on the book», rather than the usual, «But honey, I'm still doing email.» I don't know where...
From Brian W. Fitzpatrick
Huge thanks to my wife Marie for being incredibly understanding, supportive, and most of all, patient. Thank you to my brother Eric who first introduced me to UNIX programming way back...
From C. Michael Pilato
Special thanks to my wife, Amy, for her love and patient support, for putting up with late nights, and for even reviewing entire sections of this book—you always go the extra mile, and...
Соглашения, принятые в книге
В этом разделе приводятся соглашения, принятые в книге....
Типографские соглашения
Моноширинный шрифтИспользуется для записи команд, результатов их выполнения и параметров командной строки.Моноширинный шрифт с курсивомИспользуется в коде и тексте для обозначения по...
Замечание
Замечание, относящееся к окружающему тексту....
Подсказка
Полезный совет, относящийся к окружающему тексту....
Внимание
Предупреждение, относящееся к окружающему тексту.Обратите внимание, что примеры исходного кода являются всего лишь примерами. Хотя они и могут быть собраны с помощью определённых заклинаний...
Эта книга распространяется свободно
Эта книга начиналась с фрагментов документации, написанных разработчиками проекта Subversion, которые затем были собраны в единое целое и отредактированы. Поэтому, она всегда будет распро...
Как читать эту книгу?
Книга предназначена для людей с самым разным уровнем подготовки — от новичков, не имевших дела с управлением версиями ранее, до опытных системных администраторов. Важность той или иной гл...
Об этой книге
СодержаниеДля кого написана эта книга?Как читать эту книгу?Соглашения, принятые в книгеТипографские соглашенияПиктограммыСтруктура книгиЭта книга распространяется свободноБлагодарностиFrom Ben Col...
Для кого написана эта книга?
Эта книга написана для людей, которые владеют знаниями о компьютерах и хотят использовать Subversion для управления данными. Subversion может работать на разных операционных системах, но...
Структура книги
Приведём краткий обзор содержания отдельных глав книги.Глава 1, ВведениеВ этой главе приводятся сведения об истории Subversion, обсуждаются её возможности, архитектура, компоненты и...
Глава 9. Полное справочное руководство по Subversion
СодержаниеКлиент командной строки Subversion: svnПараметры svnПодкоманды svnsvn addsvn blamesvn catsvn checkoutsvn cleanupsvn commitsvn copysvn deletesvn diffsvn exportsvn helpsvn importsvn inf...


- Начало -