2 <!DOCTYPE book PUBLIC
"-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
3 <!ENTITY kappname
"&cervisia;">
4 <!ENTITY package
"kdesdk">
11 <!ENTITY % addindex
"IGNORE">
12 <!ENTITY % Russian
"INCLUDE"
13 > <!-- Change language only here -->
14 <!ENTITY CVS
"<application
19 <book lang=
"&language;">
23 >Руководство
&cervisia;</title>
33 >bernd@mail.berlios.de
</email
39 <othercredit role=
"translator"
47 >batalov@twiga.kz
</email
67 >Bernd Gehrmann
</holder>
72 >Эта программа может распространятся на условиях Q Public License определённой Trolltech AS Норвегия, в файле LICENSE.QPL включённом в пакет этого файла.
</para>
75 >Эта программа распространяется в КАКОЙ БЫ ТО НИ БЫЛО ГАРАНТИИ, без подразумеваемой гарантии ВЫСОКОГО СПРОСА или СООТВЕТСТВИЯ ДЛЯ СПЕЦИФИЧНОЙ ЦЕЛИ
</para>
79 >&FDLNotice;</legalnotice>
84 >2.01.90</releaseinfo>
88 >&cervisia; предоставляет графический интерфейс к
&CVS;.
</para>
101 >version control
</keyword>
103 >revision control
</keyword>
108 <chapter id=
"getting-started">
112 <sect1 id=
"accessing-repository">
114 >Доступ к хранилищу
</title>
117 >В этом разделе мы предполагаем, что вы используете
&CVS; только на стороне клиента. Это означает, что кто-то (вероятно администратор архива CVS) дал вам учётную запись на сервере, и это - ваша работа по проверке модулей хранилища (репозитория) и работе с ними.
</para>
120 >&CVS; поддерживает несколько методов доступа к хранилищу:
</para>
128 >Имя хранилища будет похоже на
<filename class=
"directory"
130 > и просто сохранен в каталоге, который является доступным для вашего компьютера. Он может быть не диске, смонтированном по
<acronym
132 >, это не важно. Если вы часто пользуетесь локальным хранилищем, можете указать
&cervisia; использовать его.
</para>
136 >Добавление локального хранилища
</title>
139 >Для открытия диалога репозиториев, выберите
<menuchoice
141 >Репозиторий
</guimenu
143 >Репозитории...
</guimenuitem
150 >Нажмите кнопку
<guibutton
151 >Добавить...
</guibutton
157 >В появившемся диалоговом окне введите детали о хранилище.
</para
162 >Подтвердите нажатием кнопки
<guibutton
170 >В дальнейшем, когда вы будете использовать
&cervisia; для проверки нового модуля,
&cervisia; предоставит вам хранилище, которые вы добавили здесь.
</para>
180 >Имя хранилища будет похоже на
<literal
181 >:ext:bernd@cvs.cervisia.sourceforge.net:/cvsroot/cervisia
</literal
185 >Этот метод требует, чтобы вы имели учётную запись на сервере (в этом случае
<systemitem class=
"systemname"
186 > cvs.sourceforge.net
</systemitem
187 > и используете отдалённую оболочку для связи. По умолчанию для этой цели
&CVS; использует
↱, однако
↱ считается ненадёжным и широко используется
&ssh;.
</para>
190 >Если вы используете
&ssh;, вы должны установить переменную окружения$
<envar
192 > в
&ssh; при использовании клиента
<command
194 >.
&cervisia; это поддерживает.
</para>
197 >Откройте окно репозиториев снова и нажмите кнопку
<guibutton
198 >Добавить...
</guibutton
199 >. Теперь в первой строке введите имя хранилища и командную оболочку (
⪚ &ssh;) во второй строке. Если вы подтвердите нажатием кнопки
<guibutton
201 >,
&cervisia; запомнит эти настройки.
</para>
204 >Обратите внимание, что
&cervisia; не может ответить на возможные запросы пароля c сервера. Вы должны убедиться, что вход на сервер работает и пароля не требует. При использовании
↱ это может быть достигнуто созданием файла
<filename
208 > со списком проверенных серверов (см. страницу man по
↱).
</para>
211 >При использовании
&ssh;, вы должны скопировать ваш публичный ключ
<filename
214 >/.ssh/identity.pub
</filename
215 > на сервер. Ключ не должен быть защищён паролем (см страницу man по
&ssh; и
<acronym
219 > на SourceForge). Если вы не уверены, уточните у вашего системного администратора.
</para>
230 >Имя хранилища будет похоже на
<filename
231 >:pserver:gehrmab@cvs.kde.org:/home/kde
</filename
235 >Этот метод использует специальный протокол со слабой аутентификацией (
<literal
237 > замещает идентификацию пароля). Перед использованием сервера вы должны войти на него. Поскольку это не поддерживается
&cervisia; напрямую, выполните в командной оболочке
</para>
248 >:pserver:joe@cvs.kde.org:/home/kde login
</parameter
253 >(конечно, указывается имя вашего хранилища).
&CVS; попросит вас ввести пароль и сверится с сервером. Если пароль верный, имя хранилища вместе с паролем будет добавлено в конец файла
<filename
257 >. Далее при каждом обращении к хранилищу
&CVS; будет использовать эту информацию автоматически. Поскольку каждый, кто знает ваш пароль, может работать с хранилищем от вашего имени (а также может намеренно повредить файлы), вы должны хранить
<filename
260 >/.cvspass
</filename
261 > в тайне и сделать его нечитаемым для других.
</para>
270 <sect1 id=
"importing">
272 >Импорт модуля в репозиторий
</title>
275 >В этом разделе описывается процесс помещения нового проекта в репозиторий
&CVS;. Если вы хотите работать только с существующим хранилищем, можете пропустить этот раздел.
</para>
277 <figure id=
"screenshot-import" float=
"1">
279 >Снимок экрана диалога импорта
&cervisia;</title>
282 ><imagedata format=
"PNG" fileref=
"import.png"/></imageobject>
285 >Снимок экрана диалога импорта
&cervisia;</phrase
291 >В
<xref linkend=
"screenshot-import"/> представлен диалог который поможет выполнить
<emphasis
293 > проекта как модуля. После того как вы заполнили форму подтвердите
<guibutton
295 >, и будет выполнена следующая команда:
</para>
300 > -d
<co id=
"co-repository"
303 >репозиторий
</replaceable
304 > import -m
"" <co id=
"co-module"
308 > <co id=
"co-vendortag"
311 >метка разработчика
</replaceable
312 > <co id=
"co-releasetag"
315 >метка релиза
</replaceable
320 <callout arearefs=
"co-repository">
322 >Имя хранилища
&CVS;, также известное как $
<envar
324 >. Вы должны иметь доступ на запись в него, и репозиторий должен быть корректно инициализирован. Если репозиторий ещё не существует инициализируйте его командой
<userinput
330 >репозиторий
</replaceable
337 >Если репозиторий не локальный, удостоверьтесь в том, что аутентификация работает (см
<xref linkend=
"accessing-repository"/>).
</para>
340 <callout arearefs=
"co-module">
342 >Имя модуля, под которым проект будет сохранён. После импорта проект может быть проверен под этим именем. Дополнительную информацию смотрите
<xref linkend=
"checkingout"/>. Это также название соответствующего каталога в хранилище.
</para>
345 <callout arearefs=
"co-vendortag">
347 >Метка разработчика исторически используется для определения сторонних источников. Используйте ваше имя пользователя, если не имеете лучших вариантов. Это не имеет очень большого значения.
</para>
350 <callout arearefs=
"co-releasetag">
352 >Эта метка также используется для того, чтобы импортировать различные версии стороннего программного обеспечения. Если вы не имеете лучшие варианты, используйте
<literal
354 > либо строку
<literal
358 > имя вашего проекта и
<literal
360 > - номер версии.
</para>
367 >Рабочий каталог
</title>
369 >Это начальный каталог проекта, который вы хотите импортировать Импорт начинается с этого каталога, включая все подкаталоги.
</para>
374 >Игнорировать файлы
</title>
376 >Если вы заполните это поле, в команду
<command
378 > будет добавлена дополнительная опция
<option
382 >. Этот параметр интерпретируется как разделённый пробелами список игнорируемых файлов. В общем случае это более чистый и менее подверженный ошибкам способ контроля файлов, которые входят в репозиторий. Однако этот метод может быть полезен, если проект содержит файлы, которые игнорируются
&CVS;, например файлы
<filename
384 >. В этом случае, в поле укажите символ
<literal
386 >. Это блокирует механизм блокируемых файлов
&CVS;, смотрите
<xref linkend=
"ignoredfiles"/>.
</para>
391 >Импортировать как бинарные
</title>
393 >Если вы выбираете этот параметр, все файлы будут импортированы в бинарном режиме, т.е. будет использована команда
<command
395 > с аргументом
<option
403 <sect1 id=
"checkingout">
405 >Проверка модуля из хранилища
</title>
407 >Перед началом работы с контролем версий проекта, вы должны проверить
<emphasis
408 >рабочую копию
</emphasis
411 <figure id=
"screenshot-checkout" float=
"1">
413 >Снимок экрана диалога проверки
&cervisia;</title>
416 ><imagedata format=
"PNG" fileref=
"checkout.png"/></imageobject>
419 >Снимок экрана диалога проверки
&cervisia;</phrase
428 >Имя хранилища
&CVS;, известное как
<filename
432 >. Если репозиторий не локальный, убедитесь что аутентификация работает, также смотрите
<xref linkend=
"accessing-repository"/>.
</para>
439 >Имя модуля для проверки. Если вы работаете с существующим хранилищем, вы должны получить это имя у администратора. Если репозиторий содержит файл
<filename
443 > вы можете получить список доступных модулей щелчком мыши на кнопке
<guibutton
444 >Получить список
</guibutton
450 >Рабочий каталог
</title>
452 >Каталог в котором модуль должен быть проверен. Обратите внимание, что начальный каталог рабочей копии всегда создаётся как каталог с именем модуля в каталоге, указанном здесь.
</para>
457 >Проверка изменений
</title>
459 >Альтернативное имя каталога, в котором нужно сделать checkout модуля, т.е. загруженные файлы будут сохранены не в каталоге с именем модуля, а в указанном
</para>
464 >Только экспорт
</title>
466 >Только загрузить файлы репозитория, без создания соответствующих служебных каталогов CVS. Например, это может пригодиться при получении кода для релиза
</para>
471 <sect1 id=
"mainscreen">
473 >Главное окно
</title>
475 >Когда вы запускаете
&cervisia;, и открываете рабочую копию используя
<menuchoice
479 >Открыть песочницу...
</guimenuitem
481 > вы видите иерархическое представление текущего каталога. Файлы указанные в
<filename
482 >.cvsignore
</filename
483 >, не отображаются. Для каждого файла, отображается его состояние. По умолчанию это
"Неизвестно", так как
&cervisia; не отображает информацию пока вы не запросите её используя
<guimenuitem
484 >Обновить
</guimenuitem
489 >. Таким образом вы имеете минимальную функциональность даже если не имеете постоянного подключения к серверу
&CVS;.
</para>
491 <figure id=
"screenshot-mainview" float=
"1">
493 >Снимок экрана главного окна
&cervisia;</title>
496 ><imagedata format=
"PNG" fileref=
"mainview.png"/></imageobject>
499 >Снимок экрана главного окна
&cervisia;</phrase
505 >Команды из меню Файл обычно воздействуют только на выделенные файлы. Вы также можете выделять каталоги. Когда вы выбираете
<guimenuitem
506 >Обновить
</guimenuitem
509 >.
&cervisia; запускает команду
</para>
514 >cvs update -n
<replaceable
515 >имена файлов
</replaceable
521 >для получения информации о статусе выбранных файлов. Обратите внимание,
&cervisia; проходит рекурсивно по всем подкаталогам, только если указана соответствующая опция в меню
<guimenu
523 >. Теперь вы видите в столбце
<guilabel
525 > соответствующее состояние файла:
</para>
531 >Изменён локально - это означает, что вы изменили файл по сравнению с версией в хранилище.
</para
536 >Добавлен локально - это означает, что вы добавили файл в рабочий каталог, которые не существует в хранилище. Фактически добавление файла в репозиторий происходит только после выполнения команды Передать.
</para
541 >Удалён локально - это означает, что вы удалили файл, но он все ещё существует в хранилище Фактическое удаление происходит только после выполнения команды Передать.
</para
546 >Необходимо обновление - означает, что в хранилище существует более новая версия файла, например кто-то передал свою модификацию. Обычно вы обновляете свою копию файла в рабочем каталоге из хранилища.
</para
551 >Необходима заплатка - это тоже самое, что и предыдущее. Различие только в том, что в этом случае сервер передаёт только исправления вместо передачи всего файла.
</para
556 >Необходимо слияние - указывает на необходимость слияния вашей рабочей копии с версией файла в хранилище. Это обычно случается если кто-то передал в репозиторий свои изменения редактируемого вами файла. В случае конфликта (если кто-то ещё изменил некоторые из тех же строк что и вы), тогда устанавливается статус
"Конфликт".
</para
561 >Современный - указывает, что файл идентичен версии в хранилище.
</para
566 >Конфликт - указывает, что файл всё ещё имеет маркеры конфликта. Возможно вы раньше модифицировали файл но не разрешили конфликты.
</para
571 >Не в CVS - указывает, что файл не зарегистрирован в хранилище
&CVS;. Если вы хотите сделать это файл доступным для других, вы должны добавить его в репозиторий. Если нет, вы должны добавить его в файл
<filename
572 >.cvsignore
</filename
579 >Теперь вы имеете представление о статусе файлов CVS, и можете сделать их обновление. Выделите несколько файлов (или начальный каталог, который соответствует все файлам и каталогам содержащимся в нём). Выберите
<guimenuitem
580 >Обновить
</guimenuitem
583 >. (Возможно вы уже выбрали файлы ранее). Теперь состояние некоторых файлов изменилось. Обычно файлы имеющие статус
"Необходимо исправление" или
"Необходимо обновление" обновляются, так что в столбце
"Статус" возможны новые пункты:
</para>
589 >Обновлён - если файл обновлён из хранилища
</para
594 >Исправлен - указывает, что сервер послал исправления для этого файла, и исправление было успешно применено. Если исправление не было успешно, из за конфликта между вашими модификациями и других разработчиков, устанавливается состояние
"Конфликт" </para
600 >Возможно вы уже заметили что в зависимости от состояния файла, его строка меняет свой цвет. Цвета подобраны таким образом, чтобы отразить приоритет состояния. Например файл с конфликтом отмечен красным цветом, так как вы должны решить конфликт прежде чем сможете работать с этим файлом. Чтобы получить информацию о файлах, которые имеют необычное состояние щёлкните на заголовке столбца
<guilabel
602 >. Теперь список файлов отсортирован по состоянию, и вы имеете необходимую информацию в начале списка. Чтобы вернуться к алфавитному порядку представления файлов щёлкните по заголовку столбца
<guilabel
610 <chapter id=
"workingwithfiles">
612 >Работа с файлами
</title>
615 >Все наиболее часто используемые функциональные возможности
&CVS; доступны в главном окне
&cervisia;. Команды обычно воздействуют сразу на несколько файлов, а именно на выбранные в данный момент. Если выбраны и каталоги, то их интерпретация зависит от опций, расположенных в меню
<guimenu
617 >. Например если установлена опция
<menuchoice
621 >Передавать и удалять рекурсивно
</guimenuitem
623 > и вы выполнили
<menuchoice
627 >Передать...
</guimenuitem
629 > и выбран каталог, то все файлы расположенные в этом каталоге и всех его подкаталогах будут переданы. Иначе будут переданы только файлы, расположенные в выбранном каталоге.
</para>
632 >Вы можете открыть файл для редактирования двойным щелчком мыши или клавишей
<keycap
634 >. Это запускает текстовый редактор указанный в
<menuchoice
638 >Настроить Cervisia...
</guimenuitem
640 > и передаёт ему имя файла как аргумент.
</para>
642 <sect1 id=
"addingfiles">
644 >Добавление файлов
</title>
647 >Добавление файла к проекту состоит из двух шагов: Сначала файлы должны быть зарегистрированы в
&CVS;. Выделите в главном окне
&cervisia; все файлы которые хотите добавить. Далее выберите
<menuchoice
651 >Добавить в репозиторий
</guimenuitem
653 >.
&cervisia; выполнит следующую команду
</para>
658 >cvs add
<replaceable
659 >имена файлов
</replaceable
665 >Если операция завершиться успешно, в колонке статуса для добавленных файлов отобразиться
"Добавлен в репозиторий" </para>
668 >Чтобы фактически поместить файлы в репозиторий, вы должны передать их. Эта процедура имеет существенное преимущество: вы можете передавать файлы вместе с модификациями в других частях проекта. При выполнении этого, можно видеть (как при отправке электронной почты), что все изменения часть целого.
</para>
671 >&CVS; не предназначен для обеспечения контроля версий бинарных файлов. Например, слияние бинарных файлов не имеет смысла. Кроме того, по умолчанию
&CVS; использует расширенные ключевые фразы (
⪚ в строке
<literal
672 >$ Revision:
1.6 $</literal
673 >) когда файл передан. В бинарных файлах такие вставки могут повредить файл и сделать его полностью непригодным. Вы должны передавать бинарные файлы (или другие файлы подобно Postscript) с использованием командной строки
</para>
678 >cvs add -kb
<replaceable
679 >имена файлов
</replaceable
685 >В
&cervisia;, это выполняется выбором в меню
<menuchoice
689 >Добавить как бинарный...
</guimenuitem
696 <sect1 id=
"removingfiles">
698 >Удаление файлов
</title>
701 >Как и при добавлении, удаление файлов состоит из двух частей. С начала файлы должный быть зарегистрированы как удалённые, выберите в меню
<menuchoice
705 > Удалить из хранилища
</guimenuitem
707 > для запуска команды
</para>
711 >cvs remove -f
<replaceable
712 >имена файлов
</replaceable
718 >Далее, эти изменения должны быть переданы, возможно вместе с другими модификациями проекта.
</para>
722 >Указанная команда работает только если файл является современным. Иначе вы получите сообщение об ошибке. Если вы изменили файл по сравнению с версией в хранилище, или кто-то ещё сделал любые модификации. Вы должны будите сначала проверить их и решить, хотите ли отказаться от них.
</para
728 <sect1 id=
"addingremovingdirs">
730 >Добавление и удаление каталогов
</title>
733 >Обработка каталогов существенно отличается от файлов
&CVS;. Они не находятся под контролем версий, то-есть вы не можете проверить какие каталоги существовали в хранилище в некоторое время. Кроме того каталоги никогда не могут удалятся явно (ожидается удаление их непосредственно в хранилище).
</para>
736 >Как замена,
&CVS; следует соглашению, что каталог
"не существует" если в версии проекта он пуст. Это может быть предписано использованием опции
<option
738 > в командах
<command
741 >cvs checkout
</command
742 >. Эта опция может быть установлена в меню
<menuchoice
746 >Удалять пустые каталоги при обновлении
</guimenuitem
751 >Каталог можно добавить в репозиторий командой
</para>
756 >cvs add
<replaceable
757 >имя каталога
</replaceable
763 >которая имеется и в меню
<menuchoice
767 >Добавить в репозиторий
</guimenuitem
769 >. Обратите внимание, что добавление каталогов не требует передачи впоследствии.
</para>
774 <sect1 id=
"commitingfiles">
776 >Передача файлов
</title>
779 >После внесения изменений в фалы рабочей копии, чтобы предоставить доступ к ним другим разработчикам, вы 'передаёте' их. При передаче, вы помещаете вашу версию модифицированных файлов, как новую версию в хранилище. Последующее обновление другими разработчиками, перенесёт вашу модификацию в их рабочие копии.
</para>
782 >Чтобы передать несколько файлов, выбелите их в главном окне
&cervisia; и выберите в меню
<menuchoice
786 >Передать...
</guimenuitem
790 <figure id=
"screenshot-commit" float=
"1">
792 >Снимок экрана диалога передачи
&cervisia;</title>
795 ><imagedata format=
"PNG" fileref=
"commit.png"/></imageobject>
800 >Вы увидите диалог, в верхней части которого будет список выбранных файлов, а нижней части журнальные сообщения для ваших изменений. Когда вы подтвердите этот диалог, будет выполнена команда
</para>
805 >cvs commit -m
<replaceable
806 >сообщение
</replaceable
808 >имена файлов
</replaceable
814 >&cervisia; предоставляет несколько способов отображения журнальной информации: Во первых, в списке файлов вы можете дважды щёлкнуть на файле или нажать
<keycap
816 > чтобы увидеть изменения сделанные в файле. Во вторых, предоставляется список журнальных сообщений, которые вы недавно использовали в выпадающем списке. В третьих, этот диалог интегрирован с редактором
&cervisia;changelog, описанным ниже.
</para>
820 >Наиболее частая ошибка при передаче файлов
<errorname
821 >Неудачная проверка современности
</errorname
822 >. Она указывает что кто-то передал свои изменения в репозиторий с момента вашего последнего обновления. Если говорить технически ваша версия
<literal
824 > не последняя в своей ветке. В этом случае
&CVS; отказывается сливать ваши модификации с хранилищем. Решение этой проблемы состоит в том, чтобы выполнить разрешение конфликтов и передать файл снова. Конечно, если вы работаете с программным проектом, это хороший метод, чтобы проверить работает ли программа после того, как вы выполнили обновление - в конце концов, могло быть и плохое взаимодействие между вашими модификациями и другими модификациями, которые разрушают код.
</para
829 >Другие популярные ошибки
<errorname
830 > Метка Sticky 'X' для файла'X' не в ветке
</errorname
831 >. Это случается, когда вы пытаетесь передать файл, который вы предварительно привели к определённой версии или метке командой
</para>
837 >cvs update -r X
</userinput
841 >(которая является
⪚ использованию меню
<menuchoice
843 >Расширенный
</guimenu
845 > Обновить до метки/даты...
</guimenuitem
847 >). В это случае, метка на этот файл становится липкой, т.е. дальнейшие обновления не обновляют файл до последней версии в ветке. Если вы хотите передать дальнейшие версии в ветку, вы должны предварительно обновить его до метки на ветви.
</para>
851 >С помощью
&cervisia; очень легко поддерживать файл ChangeLog, который должен соответствовать рекомендациям по кодированию GNU. Чтобы воспользоваться этой возможностью выберите в меню
<menuchoice
855 >Вставить запись в ChangeLog...
</guimenuitem
857 >. Если файл с именем
<filename
858 > ChangeLog
</filename
859 > уже существует к корневом каталоге вашей песочницы, он будет загружен и вы сможете его редактировать. В верхней чести этого файла автоматически будет добавлена текущая дата и ваше имя пользователя (которое должно быть определено, как указано в
<xref linkend=
"customize-general"/>). По окончании щёлкните на кнопке
<guibutton
861 >, при следующем открытии диалога передачи в сообщении журнала вы увидите сообщение ChangeLog введённое раннее.
</para>
866 <sect1 id=
"resolvingconflicts">
868 >Разрешение конфликтов
</title>
871 >Конфликты могут произойти, когда вы сделали изменения в файле, который уже изменён другим разработчиком. Конфликт будет обнаружен
&CVS;, когда вы обновляете изменённый файл. Тогда
&CVS; попробует объединить модификации переданные другими разработчиками в вашу рабочую копию. Сбои слияния, если и ваши и другие модификации находятся в накладывающихся частях файла, сервер
&CVS; сообщит об этой ошибке.
</para>
874 >Теперь ваша работа состоит в том, чтобы разрешить эти конфликты перед передачей файла.
&CVS; не позволит передать любые файлы с конфликтами, пока они не будут отредактированы. Конечно, вы имеете большие возможности при разрешении набора конфликтов. Вы можете для каждого конфликта решить выбрать одну из альтернативных версий. Вы можете также решить, что оба варианта непригодны и нарушают программу и переписать финальный файл заново.
</para>
877 >В главном окне
&cervisia;, файлы с конфликтами помечены как
"Конфликт" в колонке статуса и красным цветом. Для разрешения конфликта вы можете воспользоваться традиционным путём, дважды щёлкните на имени файла и отредактируйте его в текстовом редакторе. Но вы можете воспользоваться диалогом в меню
<menuchoice
881 >Разрешение...
</guimenuitem
885 <figure id=
"screenshot-resolve" float=
"1">
887 >Снимок экрана диалога разрешения
&cervisia;</title>
890 ><imagedata format=
"PNG" fileref=
"resolve.png"/></imageobject>
893 >Снимок экрана диалога разрешения
&cervisia;</phrase
899 >В верхней части диалога, вы видите вашу версию с левой стороны версию из хранилища с правой стороны. Различия между ними отмечены красным цветом. В нижней части вы видите объединённую версию, которая будет сохранена при нажатии кнопки
<guibutton
900 > Сохранить
</guibutton
904 >Вы можете переключаться между секциями различий нажатием кнопок
<guibutton
908 >. В середине нижней части диалога вы можете видеть какая секция сейчас активна. Например,
<literal
910 > означает что вы во второй секции из
8 (общее количество). Теперь вы можете решать какой раздел из
2 версий вы ходите иметь в финальном файле. Нажимая
<guibutton
912 >, вы принимаете версию, которую вы редактировали. Нажимая
<guibutton
914 >, вы принимаете версию из хранилища.
</para>
921 <chapter id=
"obtaininginformation">
923 >Получение информации о файлах
</title>
925 <sect1 id=
"browsinglogs">
927 >Просмотр журнала cvs
</title>
930 >Когда вы помечаете файл в главном окне и выбираете в меню
<guimenu
933 >Просмотреть журнал
</guimenuitem
934 >, запускается команда
</para>
939 >cvs log
<replaceable
940 >имена файлов
</replaceable
946 >и будет показан диалог отражающий историю версий выбранного файла.
</para>
950 >Снимок экрана диалога просмотра журнала
&cervisia;</title>
953 ><imagedata format=
"PNG" fileref=
"logtree.png"/></imageobject>
956 >Снимок экрана диалога просмотра журнала
&cervisia;</phrase
962 >Вы можете выбрать вид истории как дерево или как список. Что вы предпочтёте, это вопрос вкуса и зависит от того, какая информация вам нужна. Дерево - это представление того что было сделано с файлом авторами в различных версиях. Как подсказки вы можете видеть журнальные сообщения. Список по своему характеру линейный - поэтому не даёт представления ветвей. С другой стороны имеет более компактное представление, а именно время каждого изменения и первой части журнального сообщения.
</para>
965 >Для получения дополнительной информации о некоторой версии, вы можете щёлкнуть по ней в списке или в в дереве. Поля, расположенные в середине диалога, заполняться дополнительной информацией предоставляемой командой
<command
967 >. Вы можете отметить две версии 'A' и 'B', которые являются корректными, если собираетесь использовать особенности предоставляемые командными кнопками. Версия 'A' может быть выбрана левой кнопкой мыши, версия 'B' - средней. В списке, вы также можете перемещаться используя клавиши стрелок. Чтобы выделить версии 'A' и 'B' используйте короткие клавиши
<keycombo
979 >, соответственно.
</para>
982 >Если вы нажимаете кнопку
<guibutton
983 >Аннотация
</guibutton
984 >, Вы увидите диалог отображающий содержимое файла из версии 'A'. Каждая строка которого предваряется информацией о предыдущем редакторе, и о его версии.
</para>
987 >Если вы нажимаете кнопку
<guibutton
989 > будет выполнена команда
<command
991 > и вы увидите диалог со всеми модификациями между двумя отмеченными версиями. Чтобы облегчить чтение для отображения добавленных, удалённых или изменённых строк используются различные цвета.
</para>
996 <sect1 id=
"browsinghistory">
998 >Просмотр истории
</title>
1001 >Если используемый репозиторий поддерживает ведение журнала,
&cervisia; может предоставлять хронологию некоторых событий таких как проверки, передачи, обновления, релизы и rtags. Выберите в меню
<guimenu
1003 > пункт
<guimenuitem
1004 > История
</guimenuitem
1005 >, и
&cervisia; выполнит команду
</para>
1010 >cvs history -e -a
</command
1016 >Это загружает файл истории с сервера, то-есть списка событий для всех пользователей и всех модулей. Он может быть очень большого размера!
</para
1020 >Теперь вы можете видеть список событий, сортированный по дате. Во втором столбце, тип события означает:
</para>
1026 >Проверка - пользователь, указанный в столбце 'Автор' проверил модуль
</para
1031 >Метка - пользователь использовал команду
<command
1033 >. Примечание, использование
<command
1035 > (в меню
&cervisia; <menuchoice
1037 >Расширенный
</guimenu
1039 >Метка/Ветвь...
</guimenuitem
1041 >) не заносится в журнал истории. Это имеет исторические причины (смотрите
&CVS; <acronym
1048 >Релиз - пользователь выпустил модуль. Обычно эта команда редко используется и не имеет большого значения.
</para
1053 >Обновление, Удалён - пользователь сделал модификацию в файле, который был удалён в хранилище. Как следствие файл был удалён и в его рабочей копии.
</para
1058 >Обновление, Скопирован - пользователь внёс модификации в файл. Новая версия которого была скопирована в репозиторий.
</para
1063 >Обновление, Объединён - пользователь сделал модификации в файле. Модификации в версии хранилища были объединены в его рабочую копию.
</para
1068 >Обновление, Конфликт - пользователь сделал модификации в файле, и был обнаружен конфликт с его собственными модификациями.
</para
1073 >Передача, Изменён - пользователь передал изменённый файл.
</para
1078 >Передача, Добавлен - пользователь добавил файл и передал его.
</para
1083 >Передача, Удалён - пользователь удалил файл и передал его.
</para
1088 <figure id=
"screenshot-history" float=
"1">
1090 >Снимок экрана диалога истории
&cervisia;</title>
1093 ><imagedata format=
"PNG" fileref=
"history.png"/></imageobject>
1096 >Снимок экрана диалога истории
&cervisia;</phrase
1102 >Вы легко можете сортировать список и по другим критериям, нажимая на соответствующий заголовок столбца. Чтобы легко можно было разобраться в записях хронологии, некоторые опции фильтра активируются переключателями:
</para>
1107 >Показать события передачи - показывать передачи
</para
1111 >Показать события проверки - показывать проверки
</para
1115 >Показать события меток - показывать метки
</para
1119 >Показать другие события - показывать события не указанные выше
</para
1123 >Только пользователь - показывать события, вызванные конкретным пользователем
</para
1127 >Соответствие имён файлов - фильтровать имена файлов регулярным выражением.
</para
1131 >Соответствие имён каталогов - фильтровать имена каталогов регулярным выражением.
</para
1136 >Специальные символы используемые в регулярных выражениях
</para>
1144 > соответствует любому количеству символов
<literal
1153 > соответствует одному или более символу
<literal
1162 > соответствует нулю или одному символу
<literal
1171 > соответствует началу строки.
</para
1178 > соответствует концу строки.
</para
1185 > соответствует набору символов,
⪚ набор состоящий из a,b,c,x,y,z.
</para
1195 >Наблюдение различий между версиями
</title>
1198 >Есть несколько мест в
&cervisia; где вы можете вызвать окно отображающее различия между версиями файла:
</para>
1204 >В главном окне, вы можете выбрать в меню
<menuchoice
1208 >Различия с хранилищем...
</guimenuitem
1210 > Это основано на команде
<command
1212 > и отображает различия между версией в вашей песочнице и последней обновлённой версией (также известной как
<literal
1214 >). Это особенно полезно перед передачей файла, так что вы можете найти соответствующее журнальное сообщение.
</para
1219 >В диалоге передачи файлов, вы можете вызвать окно различий дважды щёлкая на имени файла или нажатием
<keycap
1221 >. Это похоже на использование
<menuchoice
1225 >Различия с хранилищем...
</guimenuitem
1227 > с соответствующим файлом в главном окне.
</para
1232 >В диалоге просмотра журнала, вы можете выбрать две версии файла и вызвать диалог показывающий различия между ними (смотрите раздел
<xref linkend=
"browsinglogs"/>).
</para
1238 >Поскольку вы, возможно ожидали,
&cervisia; не блокирует вывод команды
<command
1240 > в ваш терминал, но отображает графическое представление как описано в
<xref linkend=
"screenshot-log"/>.
</para>
1242 <figure id=
"screenshot-log" float=
"1">
1244 >Снимок экрана диалога различий
&cervisia;</title>
1247 ><imagedata format=
"PNG" fileref=
"diff.png"/></imageobject>
1250 >Снимок экрана диалога различий
&cervisia;</phrase
1256 >Текст в диалоге - улучшенный вариант текста, предоставленного командой diff с опцией
<option
1258 >. Вы можете видеть различные версии в двух окнах, с упорядоченными для построчного сравнения строками. Это значить, при добавлении или удалении текста, в соответствующем окне отображаются пустые строки с маркером
<literal
1260 > в левой части. Также вы можете видеть в левом столбце номер каждой строки.
</para>
1263 >Во втором столбце правого окна, вы можете видеть тип сделанного изменения. Возможные варианты
<literal
1269 >. Соответствующие строки отмечены синим, зелёным и красным цветом. В середине диалога отображается изображение с цветными маркерами. Этим способом вы можете получить представление обо всех изменениях в файле. Вы также можете ориентироваться по изображению при использовании полос прокрутки.
</para>
1272 >Обычно полосы прокрутки левого и правого окна синхронизированы, то есть вы прокручиваете текст в левой части, правая часть прокручивается автоматически. Вы можете изменить это отключив параметр
<guibutton
1273 >Синхронизировать полосы прокрутки
</guibutton
1277 >Информацию о настройке диалога различий смотрите в
<xref linkend=
"customize-commands"/>.
</para>
1282 <sect1 id=
"annotate">
1284 >Наблюдение при просмотре аннотаций файла
</title>
1288 >cvs annotate
</command
1289 > &CVS; предлагает просмотреть, для каждой строки в файле, кто изменил её последний. Этот вид может быть полезен, чтобы узнать, кто внёс изменение в поведение программы, или кого нужно попросить о изменении или исправлении ошибки в коде.
</para>
1292 >&cervisia; не только предоставляет доступ к этой особенности, но и обогащает её информацию интерактивным образом. Вы можете увидеть аннотированное представление выбрав в меню
<menuchoice
1296 >Аннотации...
</guimenuitem
1298 > Другой способ состоит состоит в нажатии кнопки
<guilabel
1299 >Аннотации
</guilabel
1300 > в диалоге просмотра журнала. В
<xref linkend=
"screenshot-annotate"/> вы можете посмотреть снимок экрана с этого диалога.
</para>
1302 <figure id=
"screenshot-annotate" float=
"1">
1304 >Снимок экрана диалога аннотаций
&cervisia;</title>
1307 ><imagedata format=
"PNG" fileref=
"annotate.png"/></imageobject>
1310 >Снимок экрана диалога аннотаций
&cervisia;</phrase
1316 >В диалоге аннотаций, вы видите последнюю версию файла. В столбцах расположенных перед текстом, отображается информация о последних изменениях в каждой строке. В первом столбце отображается номер версии. Во втором столбце - автор этой версии. В третьем столбце - дату последнего изменения строки.
</para>
1319 >Следовательно, когда какая-то строка покажется вам странной, вы можете узнать, кто является ответственный за неё. Вы также можете узнать почему эта строка была изменена. При перемещении курсора мыши на номер версии, во подсказке можно увидеть журнальное сообщение и дату изменения.
</para>
1326 <chapter id=
"advancedusage">
1328 >Расширенное использование
</title>
1330 <sect1 id=
"taggingbranching">
1332 >Метки и ветви
</title>
1335 >Здесь мы обсуждаем только технические аспекты меток и ветвей. Если вы - только
<emphasis
1336 >пользователь
</emphasis
1337 >, у вас не должно возникнуть проблем. Однако если вы администратор хранилища, вы сначала должны разобраться в нетехнических проблемах, которые сопутствуют ветвлению, чтобы получить представление об отнимающее много времени и подверженное ошибкам обслуживание различных ветвей. Приложение содержит некоторые ссылки по этой теме.
</para>
1340 >Простая метка - что вы делаете при релизе, так что вы могли вернуться к этому состоянию проекта. Меткам обычно дают имена состоящие из названия проекта и номера версии. Например
&cervisia; 1.0 доступен по метке
<literal
1341 > CERVISIA_1_0
</literal
1342 >.
&cervisia; соблюдает строгие правила
&CVS; о допустимых именах меток. Она должна начинаться с символа и может содержать символы, цифры, дефисы и подчёркивания.
</para>
1345 >Обычно, вы отмечаете целый проект (хотя
&CVS; позволяет вам отмечать только подмножество). Отметьте начальный каталог в главном окне и выберите в меню
<menuchoice
1347 > Расширенный
</guimenu
1349 >Метка/Ветвь...
</guimenuitem
1351 >. Теперь введите имя метки, и нажмите
<keycap
1356 >Создание ветви не намного сложнее: В диалоге метки, выберите параметр
<guibutton
1357 >Создать ветвь с этой метки
</guibutton
1358 >. Вы также можете удалить существующую метку: Выберите в меню
<menuchoice
1360 >Расширенный
</guimenu
1362 >Удалить метку...
</guimenuitem
1367 >Существует несколько способов обновить проект до некоторого состояния.
</para>
1373 >Вы можете выполнить обновление до некоторой метки. Используйте для этого меню
<menuchoice
1375 >Расширенный
</guimenu
1377 > Обновить до метки/даты
</guimenuitem
1379 >. Этаже процедура используется для обновления до ветви. Команда запущенная
&cervisia; </para>
1384 >cvs update -r
<replaceable
1393 >Вы можете обновить до некоторой даты. Это бывает полезно, если ошибка внесена между двумя релизами, и вы знаете приблизительное время её внесения. Вы можете перейти в некоторую дату выбрав в меню
<menuchoice
1395 >Расширенный
</guimenu
1397 >Обновить до метки/даты
</guimenuitem
1399 > и включив опцию
<guibutton
1400 >обновить до даты
</guibutton
1401 >. В поле ниже, вы можете указывать широкое разнообразие форматов даты. Один возможный вариант -
<literal
1402 >yyyy-mm-dd
</literal
1407 > - месяц (цифрами) и
<literal
1409 > - день месяца. Альтернативно можно использовать некоторые английские фразы подобно
<literal
1412 >2 weeks ago
</literal
1413 >. При использовании этой опции
&cervisia; выполняет команду
</para>
1418 >cvs update -D
<replaceable
1427 >Обе опции выше делают метку или дату 'липкой'. т.е. вы не сможете передать модификации этих файлов (если это не метка ветви). Чтобы вернуться на ветвь с именем
<literal
1429 >, используйте в меню
<menuchoice
1431 >Расширенный
</guimenu
1433 >Обновить до HEAD
</guimenuitem
1435 > Это приведёт к команде
</para>
1448 <figure id=
"screenshot-updatetag" float=
"1">
1450 >Снимок экрана диалога обновления до метки
&cervisia;</title>
1453 ><imagedata format=
"PNG" fileref=
"updatetag.png"/></imageobject>
1456 >Снимок экрана диалога аннотаций
&cervisia;</phrase
1462 >Другой аспект использования ветвления - объединение модификаций из ветки к текущей ветви. Если вы собираетесь сделать это, выберите в меню
<menuchoice
1464 > Расширенный
</guimenu
1466 >Объединить...
</guimenuitem
1468 >. Диалог, который появиться далее, предоставит вам два варианта:
</para>
1471 >Вы можете объединить все модификации сделанные в любой ветви с текущей ветвью. В этот случае отметьте параметр
<guibutton
1472 >Слияние с ветвью
</guibutton
1473 > и указать в поле метку, с которой вы хотите объединить. В этом случае
&cervisia; выполнить команду
</para>
1481 >метка ветви
</replaceable
1487 >Другая возможность состоит в том, что вы можете объединить только модификации, сделанные между двумя метками на ветви. Это обычно случается, когда вы объединяете модификации одной ветви к метке со стволом несколько раз. В этом случае отметьте параметр
<guibutton
1488 >Объединить модификации
</guibutton
1489 > и введите (в правильном порядке) две корректные метки. Это выполнить команду
</para>
1497 >метка ветви
1</replaceable
1501 >метка ветви
2</replaceable
1509 <sect1 id=
"watches">
1511 >Использование контрольных точек
</title>
1514 >Наблюдение - название особенности
&CVS; позволяющей информировать пользователей хранилища, когда разработчик начинает редактирование файла. Для использования наблюдения необходимо, чтобы файл
<filename
1517 >/CVSROOT/notify
</filename
1518 > был установлен корректно. Он не обсуждается здесь, если вы нуждаетесь в информации об его установке обратитесь к одной из книг, перечисленных в приложении.
</para>
1521 >Основная поддержка наблюдения - шесть пунктов меню.
</para>
1524 >Чтобы добавить наблюдение к одному или нескольким файлам, используйте меню
<menuchoice
1526 >Расширенный
</guimenu
1528 > Установить наблюдение...
</guimenuitem
1530 >. В диалоге, вы выбираете типы событий, поддерживаемые
&CVS;. Например, если вы хотите получать уведомления когда файл передаётся, выберите параметр
<guibutton
1533 >Передачи
</guibutton
1534 >. если вы хотите получать уведомления в любом случае выберите параметр
<guibutton
1536 >. При принятии этого диалога будет выполнена команда
</para>
1541 >cvs watch add -a commit
<replaceable
1542 >имена файлов
</replaceable
1548 >или с подобной опцией, в зависимости от событий, которые вы хотите наблюдать.
</para>
1551 >Если вы более не интересуетесь некоторыми файлами, вы можете удалить наблюдение с них. Для этого используйте меню
<menuchoice
1553 >Расширенный
</guimenu
1555 >Удалить наблюдение...
</guimenuitem
1557 >. Далее в диалоге вы указываете те-же параметры, что и при добавлении контрольной точки. Когда вы принимаете этот диалог
&cervisia; выполнить команду
</para>
1562 >cvs watch remove
<replaceable
1563 >имена файлов
</replaceable
1569 >возможно с опцией
<option
1571 > для выбранных событий.
</para>
1574 >Наконец, вы можете получить список людей, которые наблюдают несколько файлов. Выберите в меню
<menuchoice
1576 >Расширенный
</guimenu
1578 >Показать наблюдающих
</guimenuitem
1580 >. Будет использована команда
</para>
1585 >cvs watchers
<replaceable
1586 >имена файлов
</replaceable
1592 >В обычной практике использования
&CVS; каждый разработчик работает в своей песочнице. Когда он начинает редактировать файл никто об этом не знает, пока он не выполнить передачу.
</para>
1595 >Для некоторых групп разработчиков, эта модель разработки является неприемлемой. Они хотят сразу знать о работающем над файлом человеке,
<emphasis
1596 >когда он только начинает
</emphasis
1597 >. Это может быть достигнуто следующими командами
&CVS;. Когда вы начинаете редактировать файл, выберите в главном окне файл и в меню
<menuchoice
1599 >Расширенный
</guimenu
1601 >Редактировать файлы
</guimenuitem
1603 >. Это выполнить команду
</para>
1608 >cvs edit
<replaceable
1609 >имена файлов
</replaceable
1615 >Этот отошлёт уведомления всем, кто установил наблюдение на
<literal
1616 >редактирование
</literal
1617 > этого файла. Это также регистрирует вас как
<emphasis
1618 >редактора
</emphasis
1619 > этого файла. Вы можете просмотреть список редакторов файла используя меню
<menuchoice
1621 >Расширенный
</guimenu
1623 >Показать редакторов
</guimenuitem
1625 >. Это эквивалентно команде
</para>
1630 >cvs editors
<replaceable
1631 >имена файлов
</replaceable
1637 >Сессия редактирования автоматически закончится когда вы передадите файл. В этот момент всем, зарегистрировавшим наблюдение на этом файле, будет отослано уведомление о
<literal
1638 >Окончании редактирования фалов
</literal
1639 >. Конечно, вы можете прервать сеанс редактирования файла и вернуться к его предыдущей версии. Это делается с использованием меню
<menuchoice
1641 >Расширенный
</guimenu
1643 >Закончить редактирование фалов
</guimenuitem
1645 >. Обратите внимание, что
&cervisia; не будет спрашивать подтверждения, и вся выполненная работа в этом файле с момента использования меню
<menuchoice
1647 >Расширенный
</guimenu
1649 >Редактировать файлы
</guimenuitem
1651 >, будет потеряна. При этом
&cervisia; использует команду
</para>
1656 >echo y | cvs unedit
<replaceable
1657 >имена файлов
</replaceable
1663 >Пока мы рассматриваем случай, где редактирование и окончание редактирования используется разработчиками добровольно. Кроме того
&CVS; поддерживает и модель с
<emphasis
1664 >принудительным
</emphasis
1665 > использованием этих команд. Команда, используемая для переключения в принудительную модель -
<command
1666 >cvs watch on
</command
1667 >, которую мы не будем рассматривать далее, потому что она используется преимущественно администраторами репозиториев. Однако, важным моментом является то, что при использовании проектом редактирования, рабочие копии доступны
<emphasis
1668 >только для чтения
</emphasis
1669 >. (если вы не используете уловки типа
<command
1671 >). Только когда вы используете меню
<menuchoice
1673 >Расширенный
</guimenu
1675 >Редактировать файлы
</guimenuitem
1677 >, файл становится доступным для записи. И становится только для чтения, когда вы используете
<menuchoice
1679 >Расширенный
</guimenu
1681 >Закончить редактирование фалов
</guimenuitem
1686 >Интерфейс редактора
&cervisia; позволяет использовать в проекте наблюдения принудительно, несколькими способами. Если вы запустили редактор с файлом только для чтения двойным щелчком мыши или использовав меню
<menuchoice
1690 >Правка
</guimenuitem
1692 >, вы не сможете позже сохранить внесённые изменения. Каждый раз, когда вы хотите внести изменения в файл, вы должны выполнить команду
<command
1694 >, чтобы люди, наблюдающие файл получили уведомление о том, что вы работаете с файлом.
</para>
1697 >В этом случае желательно использовать опцию
<menuchoice
1701 >Выполнять cvs edit автоматически при необходимости
</guimenuitem
1703 >. Теперь, каждый раз, когда вы начинаете редактирование файл двойным щелчком мыши
&cervisia; выполнить команду
<command
1705 > перед загрузкой этого файла в редакторе. Когда вы закончите редактирование выполните передачу фалов, и переданные файлы станут опять доступными только для чтения.
</para>
1710 <sect1 id=
"locking">
1715 >Модель разработки используемая
&CVS; называется
<emphasis
1716 >не резервированными проверками
</emphasis
1717 >. Каждый разработчик имеет свою собственную песочницу, в которой редактирует файлы, как ему необходимо.
</para>
1720 >Другие системы контроля версий подобно
<acronym
1723 >SourceSafe
</application
1724 > используют отличную модель. Когда разработчик хочет изменить файл, он
<emphasis
1725 >блокирует
</emphasis
1726 > его. Только один разработчик может блокировать файл. Когда он заканчивает модифицировать файл, блокировка снимается. С одной стороны, с такой моделью разработки, конфликты никогда не возникают. С другой стороны два разработчика не могут вносить изменения в один и тот-же файл одновременно, даже если их изменения не затрагивают друг друга. Этот может быть критичным параметром. Мы не собираемся обсуждать выгоды обоих подходов. Однако
&CVS; имеет средства блокировки, это не предпочтительный способ работы с
&CVS;. Вы не должны использовать такие особенности, если не уверены, что ваш координатор проекта разрешил их.
</para>
1729 >В
&cervisia; вы блокируете файлы следующим образом Выберите блокируемые файлы в главном окне. В меню
<menuchoice
1731 >Расширенный
</guimenu
1733 >Разблокировать файлы
</guimenuitem
1735 >. Это запустит команду
</para>
1740 >cvs admin -l
<replaceable
1741 >имена файлов
</replaceable
1747 >Обратный эффект может быть достигнут использованием меню
<menuchoice
1749 > Расширенный
</guimenu
1751 >Разблокировать файлы
</guimenuitem
1753 >. Это запустит команду
</para>
1758 >cvs admin -u
<replaceable
1759 >имена файлов
</replaceable
1769 <chapter id=
"customization">
1771 >Настройка
&cervisia;</title>
1774 >&cervisia; может быть настроена различными способами по вашим потребностям и предпочтениям. Некоторые опции, которые изменяются регулярно, непосредственно доступны в меню
<guimenu
1776 >. Другие объединены в общем диалоге, который доступен в меню
<menuchoice
1780 >Настроить Cervisia...
</guimenuitem
1785 <sect1 id=
"customize-general">
1789 <formalpara id=
"customize-username">
1791 >Имя пользователя для редактора файла ChangeLog
</title>
1793 >Каждый раз, когда вы используете меню
<menuchoice
1797 >Вставить запись ChangeLog...
</guimenuitem
1799 >, генерируется новая запись ChangeLog с вашим именем и текущей датой. Обычно, считается хорошим стилем вставлять ваше полное имя и адрес электронной почты в каждую запись ChangeLog. Здесь вы можете настроить это.
</para>
1802 <formalpara id=
"customize-cvspath">
1806 >Здесь вы можете указать имя (и путь) клиента командной строки
<command
1808 >. По умолчанию,
&cervisia;. использует программу найденную в вашем
<envar
1813 <formalpara id=
"customize-editor">
1817 >Здесь вы можете настроить редактор, который вызывается при двойном щелчке на имени файла в главном окне. Для запуска редактора, эта поле должно содержать имя исполняемого файла. Так что возможно использование программ подобно
<command
1819 >. Вы можете также указать строку
<envar
1821 > если вы определили переменную окружения
<envar
1823 > указывающую на редактор открывает окно X11 непосредственно.
</para>
1828 <sect1 id=
"customize-commands">
1830 >Некоторые команды
</title>
1832 <formalpara id=
"customize-context">
1834 >Количество строк в диалоге отличий
</title>
1836 >Для диалога различий,
&cervisia; использует опцию
<option
1840 >. Это позволяет команде
<command
1842 > отображать только ограниченное количество строк около каждой отличной области. Здесь вы можете установить этот аргумент
<option
1847 <formalpara id=
"customize-diffopt">
1849 >Дополнительные опции для cvs diff
</title>
1851 >Здесь вы можете указать дополнительные параметры к команде
<command
1853 >. Часто используется опция
<option
1855 >, которая позволяет команде
<command
1857 > игнорировать изменения в количестве пустых строк.
</para>
1860 <formalpara id=
"customize-tabwidth">
1862 >Табуляция в диалоге различий
</title>
1864 >В диалоге различий, вашем файле или выводе команды
<command
1866 > расстояние между знаками табуляции установлено в определённое количество пробелов. По умолчанию, каждый знак табуляции заменяется на восемь пробелов, но здесь вы можете изменить это значение.
</para>
1869 <formalpara id=
"customize-difffrontend">
1871 >Внешняя оболочка для diff
</title>
1873 >Когда вы используете любую из особенностей, предоставляемых диалогом различий, подобно
<menuchoice
1877 > Различия с хранилищем...
</guimenuitem
1879 >,
&cervisia; использует собственную оболочку для diff. Если вы предпочитаете использовать другую, подобно
<application
1880 >Kompare
</application
1882 >TkDiff
</application
1884 >xxdiff
</application
1885 >, вы можете настроить это здесь.
</para>
1888 <formalpara id=
"customize-startstatus">
1890 >Автоматически выполнять
<menuchoice
1894 >Статус
</guimenuitem
1900 >Если выбрана эта опция, команда
<menuchoice
1904 >Статус
</guimenuitem
1906 > будет выполняться при открытии песочницы. Поскольку эта команда нуждается в некотором времени и подключению к серверу для нелокальных репозиториев (делающих её непригодной при использовании а автономном режиме). Вы можете установить эту опцию отдельно для локальных и отдалённых репозиториев.
</para>
1909 <formalpara id=
"customize-timeout">
1911 >Задержка перед отображение диалога прогресса
</title>
1913 >Фактически все команды
&CVS; запускаемые в песочнице которая принадлежит определённому хранилищу, нуждаются в подключении к серверу
&CVS;. Это вызывает задержки сетевого подключения или высокой загрузки сервера. По этой причини для команд, подобных
<menuchoice
1917 >Различия с хранилищем...
</guimenuitem
1919 > &cervisia; открывает диалог отображающий процесс выполнения команды и позволяющий прервать её. Кроме того, этот диалог используется для отображения сообщений об ошибках
&CVS;. Поскольку такой диалог может сильно раздражать можно указать задержку перед его отображением. По умолчанию она равна
4 секундам. Здесь вы можете изменить это значение.
</para>
1922 <formalpara id=
"customize-compression">
1924 >Уровень компрессии по умолчанию
</title>
1928 > сжимает файлы и исправления передаваемые по сети. Уровень сжатия может быть установлен опцией командной строки
<option
1930 >. Вы можете настроить
&cervisia; для использования этой опции выбирая здесь уровень компрессии. Это значение используется как значение по умолчанию, дополнительно в свойствах каждого хранилища доступного в меню
<menuchoice
1932 >Репозиторий
</guimenu
1934 >Репозитории...
</guimenuitem
1936 > можно указать свой уровень компрессии.
</para>
1942 <sect1 id=
"customize-look">
1944 >Внешний вид
</title>
1946 <formalpara id=
"customize-splitter">
1948 >Разделить главное окно горизонтально
</title>
1950 >Обычно главное окно
&cervisia; делиться вертикально в левой части - дерево файлов, в правой отображается вывод. Альтернативно вы можете разделить их по горизонтали.
</para>
1953 <formalpara id=
"customize-protocolfont">
1955 >Шрифт для окна протокола
</title>
1957 >Этот шрифт используется в окне протокола. В этом окне отображается информация выводимая программой
<command
1962 <formalpara id=
"customize-annotatefont">
1964 >Шрифт для отображения аннотаций
</title>
1966 >Этот шрифт используется для отображения аннотаций.
</para>
1969 <formalpara id=
"customize-difffont">
1971 >Шрифт для отображения различий
</title>
1973 >Этот шрифт используется в диалогах различий.
</para>
1980 <chapter id=
"appendix">
1984 <sect1 id=
"ignoredfiles">
1986 >Игнорируемые файлы
</title>
1989 >В главном дереве файлов
&cervisia; не отображает всех файлов, фактически расположенных там. Это аналог команды
<command
1991 > помогает избегать беспорядка, вызванного малоинтересными объектными файлами.
&cervisia; пытается подражать
<command
1993 > насколько это возможно. т.е. использует игнорируемые списки следующих источников:
</para>
1999 >Статичный список должен включать строки, подобные
<literal role=
"extension"
2003 >. Дополнительную информацию смотрите в документации по
&CVS;.
</para
2010 >/.cvsignore
</filename
2016 >Переменная окружения
<envar
2023 >.cvsignore
</filename
2024 > в соответствующем каталоге.
</para
2032 > ищет дополнительные записи в файле
<filename
2035 >/CVSROOT/cvsignore
</filename
2036 >, но это файл на сервере, и
&cervisia; должен работать и автономно. Если вы работаете в группе, которая предпочитает использовать игнорируемый список на сервере, возможно неплохой идеей будет скопировать содержимое файла с сервера в файл
<filename
2037 >.cvsignore
</filename
2038 > в вашем домашнем каталоге.
</para>
2043 <sect1 id=
"information">
2045 >Дополнительная информация и поддержка
</title>
2051 >&CVS; поставляется с полным набором документации в виде info-страниц, известных как
"The Cederqvist". Если всё установлено корректно вы можете получить доступ к ним набрав
<userinput
2052 >info:/cvs
</userinput
2053 > в строке адреса
<application
2054 >kdehelp
</application
2056 >khelpcenter
</application
2057 >. Альтернативно в
&cervisia; вы можете выбрать в меню
<menuchoice
2061 >Руководство по CVS
</guimenuitem
2063 >. Он-лайн версия Cederqvist доступна
<ulink url=
"http://cvshome.org/docs/manual/cvs.html"
2068 >Поскольку эта книга поддерживается совместно с
&CVS;, обычно это наиболее свежая. Однако мы рекомендуем рассмотреть и другую документацию по использованию
&CVS;, описанную ниже.
</para
2073 >Karl Fogel написал превосходную книгу,
<ulink url=
"http://cvsbook.red-bean.com/index.html"
2074 >Open Source Development with CVS
</ulink
2075 >. Приблизительно половина этой книги о процессе разработки программ с открытым исходным кодом. Другая половина - техническая документация по
&CVS;. Техническая часть книги была сделана свободно-распространяемой по лицензии GPL, так что вы можете свободно получить её HTML версию. Список опечаток доступен на странице упомянутой выше.
</para
2080 >Выпуски
&CVS; обсуждаются на специализированном
<ulink url=
"http://mail.gnu.org/mailman/listinfo/info-cvs"
2081 >списке рассылки
</ulink
2087 >Есть группа USENET
<literal
2088 >comp.software.config-mgmt
</literal
2089 > специализированная на управлении конфигурациями вообще.
&CVS; - незначительный раздел в этой группе, но это может быть интересно, чтобы обсудить достоинства и недостатки различных систем управления версиями по сравнению с
&CVS;.
</para
2094 >И последнее, есть
<ulink url=
"http://lists.sourceforge.net/mailman/listinfo/cervisia-user"
2095 >список рассылки
&cervisia;</ulink
2104 <sect1 id=
"commandreference">
2106 >Описание команд
</title>
2109 <sect2 id=
"menufile">
2122 >Открыть песочницу...
</guimenuitem
2127 >Открывает песочницу в главном окне
</para
2137 >Недавние песочницы
</guimenuitem
2142 >Открывает песочницы использовавшиеся недавно.
</para
2152 >Вставить запись ChangeLog...
</guimenuitem
2157 >Открывает редактор файла ChangeLog, подготовленный для добавления новой записи о внесённых изменениях.
</para
2175 >Обновить
</guimenuitem
2180 >Выполняет команду 'cvs update' для выбранных файлов и изменяет их статус и номер версии в списке файлов.
</para
2194 >Статус
</guimenuitem
2199 >Выполняет команду 'cvs -n update' для выбранных файлов и изменяет их статус и номер версии в списке файлов.
</para
2209 >Редактировать
</guimenuitem
2214 >Открывает выбранный файл в вашем редакторе.
</para
2224 >Разрешение конфликтов...
</guimenuitem
2229 >Открытие диалога для выбранного файла позволяющего вам разрешить и объединить конфликты в нём.
</para
2243 >Передать...
</guimenuitem
2248 >Позволяет вам передавать выбранные файлы.
</para
2262 >Добавить в репозиторий...
</guimenuitem
2267 >Позволяет вам добавлять выбранные файлы в репозиторий.
</para
2277 >Добавить как бинарный...
</guimenuitem
2282 >Позволяет вам добавлять файлы в репозиторий как бинарные (
<command
2300 >Удалить из хранилища...
</guimenuitem
2305 >Позволяет вам удалять выбранные файлы из хранилища.
</para
2315 >Вернуть
</guimenuitem
2320 >Отключение локальных изменений сделанных вами в выбранном файле, и возвращение его версии из хранилища (Опция
<option
2323 >cvs update
</command
2347 >Выход из
&cervisia;.
</para
2356 <sect2 id=
"menuview">
2378 >Прерывает выполняющиеся подпроцессы.
</para
2396 >Просмотреть журнал...
</guimenuitem
2401 >Просмотр дерева версий выбранного файла.
</para
2419 >Аннотации...
</guimenuitem
2424 >Показывает аннотированное представление выбранного файла, т.е. представление где вы можете видеть кто последний создал строку или внёс изменения.
</para
2442 > Различия с хранилищем...
</guimenuitem
2447 >Показывает различия между версией выбранного файла в песочнице и обновлённой ранее версией (BASE).
</para
2457 >Последние изменения...
</guimenuitem
2462 >Показывает различия между версией выбранного файла и обновлённой ранее версией (BASE).
</para
2472 >История...
</guimenuitem
2477 >Показывать историю CVS хранящуюся на сервере
</para
2487 >Развернуть дерево файлов
</guimenuitem
2492 >Открывает все каталоги в списке файлов так, чтобы вы могли видеть все файлы и каталоги.
</para
2502 >Свернуть дерево файлов
</guimenuitem
2507 >Закрытие всех каталогов в списке файлов.
</para
2515 <!-- Advanced Menu -->
2516 <sect2 id=
"menuadvanced">
2519 >Меню Расширенный
</title>
2527 >Расширенный
</guimenu
2529 >Метка/Ветвь...
</guimenuitem
2534 >Метка или ветвь выбранных файлов.
</para
2542 >Расширенный
</guimenu
2544 >Удалить метку...
</guimenuitem
2549 >Удаление указанной метки из выбранных файлов.
</para
2557 >Расширенный
</guimenu
2559 >Обновить до Метки/Даты...
</guimenuitem
2564 >Переносит выбранные файлы к данной метке или дате, делая из липкими.
</para
2572 >Расширенный
</guimenu
2574 >Обновить до HEAD...
</guimenuitem
2579 >Переносит выбранный файлы к версии HEAD.
</para
2587 >Расширенный
</guimenu
2589 >Объединить...
</guimenuitem
2594 >Слияние с данной ветвью или модификации между двумя метками в выбранных файлах.
</para
2602 >Расширенный
</guimenu
2604 >Установить наблюдение...
</guimenuitem
2609 >Установить наблюдение событий для выбранных файлов.
</para
2616 >Расширенный
</guimenu
2618 >Удалить наблюдение...
</guimenuitem
2623 >Удалить контрольную точку из набора событий выбранных файлов.
</para
2631 >Расширенный
</guimenu
2633 >Показать наблюдателей
</guimenuitem
2638 >Список наблюдателей для выбранных файлов.
</para
2646 >Расширенный
</guimenu
2648 >Редактировать файлы
</guimenuitem
2653 >Выполнить команду
<command
2655 > для выбранных файлов.
</para
2663 >Расширенный
</guimenu
2665 >Закончить редактирование фалов
</guimenuitem
2670 >Выполнить команду
<command
2671 >cvs unedit
</command
2672 > для выбранных файлов.
</para
2680 >Расширенный
</guimenu
2682 >Показать редакторов
</guimenuitem
2687 >Выполнить команду
<command
2688 >cvs editors
</command
2689 > для выбранных файлов.
</para
2697 >Расширенный
</guimenu
2699 >Блокировать файлы
</guimenuitem
2704 >Блокирование выбранных файлов.
</para
2712 >Расширенный
</guimenu
2714 >Разблокировать файлы
</guimenuitem
2719 >Разблокирование выбранных файлов.
</para
2727 >Расширенный
</guimenu
2729 > Создать заплатку для хранилища...
</guimenuitem
2734 >Создание заплатки из модификаций в вашей песочнице
</para
2742 <!-- Repository Menu -->
2743 <sect2 id=
"menurepository">
2746 >Меню Репозиторий
</title>
2754 >Репозиторий
</guimenu
2756 >Проверка...
</guimenuitem
2761 >Открывает диалог, которые позволяет вам производить проверку модуля в хранилище.
</para
2769 >Репозиторий
</guimenu
2771 >Импорт...
</guimenuitem
2776 >Открывает диалог, которые позволяет вам импортировать пакет в репозиторий.
</para
2784 >Репозиторий
</guimenu
2786 > Репозитории...
</guimenuitem
2791 >Настроить список репозиториев, которые вы наиболее часто используете.
</para
2799 <!-- Settings Menu -->
2800 <sect2 id=
"menuoptions">
2802 >Меню Настройка
</title>
2812 > Настроить быстрые клавиши...
</guimenuitem
2817 >Открытие диалога настройки клавиатурный сокращений.
</para
2827 > Настроить Cervisia...
</guimenuitem
2832 >Открытие диалога настройки
&cervisia; </para
2842 > Создавать каталоги при обновлении
</guimenuitem
2847 >Позволяет при обновлении создавать каталоги, не существовавшие ранее в песочнице (Опция
<option
2850 >cvs update
</command
2859 >Настройка
</guimenu>
2861 >Удалять пустые каталоги при обновлении
</guimenuitem
2866 >Позволяет при обновлении удалять пустые каталоги в песочнице (Опция
<option
2869 >cvs update
</command
2880 >Обновлять рекурсивно
</guimenuitem
2885 >Позволяет обновлять каталоги рекурсивно (Опция
<option
2888 >cvs update
</command
2899 >Передавать и удалять рекурсивно
</guimenuitem
2904 >Позволяет выполнять передачу и удаление рекурсивно (Опция
<option
2906 > для команд
<command
2909 >cvs remove
</command
2920 > Выполнять cvs edit автоматически при необходимости
</guimenuitem
2925 >Позволяет выполнять команду
<command
2927 > автоматически при редактировании файла.
</para
2936 <sect2 id=
"menuhelp">
2938 >Меню Помощь
</title>
2952 >Руководство по Cervisia
</guimenuitem
2957 >Запустить систему помощи KDE и загрузить справочное руководство по
&cervisia; (этот документ)
</para
2967 >Сообщить об ошибке...
</guimenuitem
2972 >Открытие диалога сообщения об ошибке.
</para
2982 >О
&cervisia;</guimenuitem
2987 >Отобразить информацию о версии и авторах.
</para
3002 >Отобразить версию KDE и базовую информацию.
</para
3012 >Руководство по CVS
</guimenuitem
3017 >Открыть страницу руководства по
&CVS; в справочной системе KDE.
</para
3030 <chapter id=
"credits-and-licenses">
3032 >Разработчики и лицензии
</title>
3033 &underFDL; </chapter>