Bazaar is a distributed version control system / Базар - распределенная система контроля версий: doc/en/tutorials/tutorial.txt

← →
Английский оригинал Перевод на русский

Сожалеем, но текст оригинала доступен только зарегистрированным пользователям.

Этот файл в формате "Python ReStructuredText". Он может быть преобразован в HTML, либо в текст. В будущем мы планируем извлеч примеры команд и автоматические тесты.

(анонимно) 21.08.08 в 17:16

-1

Этот файл в формате "Python ReStructuredText". Он может быть преобразован в HTML или в текст. В будущем мы планируем извлекать примеры команд и автоматически их тестировать.

AlexIljin 24.08.08 в 16:38

0

.. Ранее этот текст был на wiki на
.. http://bazaar.canonical.com/IntroductionToBzr
.. но был перемещён в дерево с исходниками, т.к. это может позволить сохранить синхронизированность с
.. исходниками и возможно позволит производить автоматическую проверку.

(анонимно) 17.10.08 в 16:58

0

===============
Учебник по Базару
===============

master 19.08.08 в 09:26

-1

===============
Руководство по Bazaar
===============

(анонимно) 17.10.08 в 16:30

0

Текущая версия bzr-0.91, 2007-08

(анонимно) 21.08.08 в 17:12

1

Введение

(анонимно) 21.08.08 в 07:39

0

Введение
============

master 02.09.08 в 05:23

1

Если вы уже знакомы с контролем распределенных изменений, тогда вы свободно можете пропустить всё до раздела "Представляя себя Базару". С другой стороны, если вы знакомы с контролем изменений, но не распределенных, тогда начните с "Отличия РСКВ". Иначе, заварите кофе или чай, устраивайтесь поудобнее и будьте готовы наверстать упущенное.

master 02.09.08 в 05:31

0

Цели контроля изменений
================================

master 02.09.08 в 05:24

0

Возможно вы работаете с какими-то текстовыми данными, например, разрабатываете программы, или Web-сайты, или, может быть вы правите конфигурационные файлы, которые в системе Unix расположены в директории /etc. Тогда есть шанс, что вам приходилось делать нечто такое, о чём пришлось сожалеть. Возможно, вы удалили конфигурационный файл почтового сервера, или испортили исходный код своего проекта. Что бы ни произошло, вы удалили важную информацию, которую вам крайне нужно вернуть назад. Если вы уже сталкивались с такой ситуацией, тогда вы возможно готовы для Bazaar-а.

(анонимно) 31.03.09 в 19:42

0

Возможно вы работаете с какими-то текстовыми данными, например, разрабатываете программы, или Web-сайты, или, может быть вы правите конфигурационные файлы, которые в системе Unix расположены в директории /etc. Тогда есть шанс, что вам приходилось делать нечто такое, о чём пришлось сожалеть. Возможно, вы удалили конфигурационный файл почтового сервера, или испортили исходный код своего проекта. Что бы ни произошло, вы удалили важную информацию, которую вам крайне нужно вернуть назад. Если вы уже сталкивались с такой ситуацией, тогда вы возможно готовы для Bazaar-а.

(анонимно) 31.03.09 в 19:42

0

Такая система контроля версий (СКВ) как Bazaar предоставляет вам возможность отследить изменения в директории. Для этого директория включается в некоторую специальную директорию - **ветку**. Ветка не только хранит текущее состояние, но так же отслеживает прошлые состояния. В этом случае, когда бы вы не пожелали, вы можете восстановить директорию на любой прошедший момент времени.

(анонимно) 01.04.09 в 15:45

0

Система управления версиями даёт пользователю возможность сохранять изменения в ветку путём "фиксирования **ревизии**". Ревизия создаётся путём сохранения всех изменений, которые были сделаны с последнего момента в дереве.

(анонимно) 17.10.08 в 16:55

0

Ревизии могут использоваться и для других целей. Например, кто-нибудь может закомментировать фиксацию ревизии необязательным сообщением в журнале. Настоящее сообщение может выглядеть как "Исправлен шаблон web для закрытия таблиц" или "Добавлена поддержка sftp. Исправление #595".
Мы ведём журнал, чтобы впоследствии можно было найти сообщения, в которых содержится sftp и определить, когда
была решена проблема.

(анонимно) 01.04.09 в 16:25

0

Особенности децентрализованных систем контроля версий
------------------------------------------------------------------------------------------

(анонимно) 01.04.09 в 16:27

0

Многие системы контроля версий хранят файлы в на сервере. Если захочется поработать с файлами, которые хранятся на сервере, то нужно подключиться к серверу и извлечь файлы, выполнить "checkout". В результате получится локальная директория, в которую можно вносить изменения. После этого клиент подключается к серверу и фиксирует изменения в репозитории. Этот метод известен как централизованная модель.

(анонимно) 31.03.09 в 19:23

0

Централизованная модель может иметь некоторые недостатки. Централизованная система управления версиями требует, чтобы можно было подключиться к серверу, если нужно произвести версионные операции. Это может создать небольшую проблему, если сервер располагается на другом компьютере в интернете, а Вы - нет. Или, хуже, у Вас **есть** доступ в интернет, но сервер недоступен.

(анонимно) 17.10.08 в 16:20

0

Децентрализованные системы управления версиями (которые далее будут называться DRCS) справляются с данной проблемой путём хранения веток на той же машине, где расположен клиент. В случае с Bazaar, ветка содержится в том же месте, что и код, который подвергается контролю версий. Это возволяет пользователю сохранить его изменения (**commit**), когда ему не вздумается -- даже, если он в состоянии оффлайн. Пользователю нужен доступ в интернет только, когда он хочет получить изменения в некоторой другой ветви, которая где-то в другом месте.

(анонимно) 17.10.08 в 16:26

0

Многим требуется отслеживать изменения в директории, такие как изменения в файлах или вложенных директориях. Отслеживание изменений вручную - неудобный процесс, который со временем становится только более трудоёмким, Так продолжается до тех пор, пока не используется система контроля версий, такая как Bazaar. Она автоматизирует процесс сохранения данных при создании **ревизий** дерева директорий, там, где это нужно пользователю.

(анонимно) 01.04.09 в 16:40

0

Система контроля версий, такая как Bazaar, позволяет даже больше, чем просто сохранять ревизии и отменять изменения. Например, с Bazaar-ом разработчик может взять модификации из одной ветки проекта и применить их для другой ветки проекта, даже если ветку, где находятся изменения, разрабатывает кто-нибудь другой. Это позволяет разработчикам кооперироваться без необходимости иметь доступ на запись в репозиторий.

(анонимно) 01.04.09 в 16:51

0

Bazaar помнит "происхождение" ревизии: предыдущую ревизию, на которой базируется текущая. Одна ревизия может иметь более одного прямого потомка, каждый с разными изменениями, что приводит к расхождениям в дереве развития. С помощью веток Bazaar позволяет объединять усилия множеству людей для развития проекта без необходимости введения строгих блокировок. Ветвление может быть полезно даже одному разработчику.

(анонимно) 01.04.09 в 16:58

0

Знакомство с Bazaar-ом
=================

(анонимно) 01.04.09 в 16:58

0

При установке Bazaar-а в систему устанавливается новая команда **bzr**. Всё остальное - подкоманды. Вы можете получить помощь с помощью bzr help. Некоторые аргименты группируются по темам. Наберите bzr help topics и увидите, какие темы доступны.

(анонимно) 01.04.09 в 16:09

0

Одна из функций системы контроля версий - отследить что и кем изменялось. В децентрализованных системах требуется идентификатор каждого автора для глобальной идентификации. Большинство людей уже имеют такой идентификатор: адрес электронной почты. Bazaar пытается автоматически вычислить электронный адрес, используя системное имя пользователя и имя системы. Если вам это имя не нравится, можно изменить его одним из способов:

(анонимно) 01.04.09 в 16:16

0

1. Установка адреса электронной почты через bzr whoami. Это самый простой способ.

(анонимно) 17.10.08 в 16:39

0

Для установки глобальной идентификации используется::

% bzr whoami "Ваше Имя <email@example.com>"

Если нужно использовать адрес отличный от указанного для определённой ветки,то нужно просто зайти в директорию ветки и использовать::

% bzr whoami --branch "Ваше Имя email@example.com>"

#. Установка адреса электронной почты в ~/.bazaar/bazaar.conf [1]_ при помощи
добавки следующих строк. Пожалуйста учитывайте, что [DEFAULT] чувствителен к регистру букв::

(анонимно) 17.10.08 в 16:43

0

[DEFAULT]
email=Your Name <email@isp.com>

AlexIljin 24.08.08 в 16:38

0

Как обычно, Вы можете переопределять эти настройки для ветки, создавая в базовой ветке секцию для корректиремой ветки в ~/.bazaar/locations.conf и добавляя следующие строки::

(анонимно) 17.10.08 в 16:47

0

[/the/path/to/the/branch]
email=Your Name <email@isp.com>

AlexIljin 24.08.08 в 16:38

0

#. Переопределение двух предыдущих опций можно произвести установкой глобальных переменных среды $BZR_EMAIL или $EMAIL ($BZR_EMAIL приоритетнее) в значение Вашего электронного почтового адреса.

(анонимно) 17.10.08 в 16:51

0

[1] В Windows конфигурационные файлы пользователя могут располагаться в директории данных для приложений. Так вместо ~/.bazaar/branch.conf конфигурационный файл может быть найден как C:\Documents and Settings\\Application Data\Bazaar\2.0\branch.conf. Тоже справедливо для locations.conf, ignore, и
plugins директорий.

(анонимно) 17.10.08 в 15:58

0

Создание ветви
=================

(анонимно) 17.10.08 в 15:59

0

История по умолчанию хранится в .bzr директории ветви. В новой версии Bazaar появится возможность размещать её в отдельной директории репозитория, которая может быть удалённой.

(анонимно) 17.10.08 в 16:02

0

Мы создаём новую ветвь запуском bzr init в существующей директории::

(анонимно) 17.10.08 в 16:03

0

% mkdir tutorial
% cd tutorial
% ls -a
./ ../
% pwd
/home/mbp/work/bzr.test/tutorial
%
% bzr init
% ls -aF
./ ../ .bzr/
%

AlexIljin 24.08.08 в 16:38

0

Как и при работе с CVS, есть три класса файлов: неизвестные, игнорируемые и версированные. Команда **add** делает файл версируемым, что означает, что изменения в нём будут записаны системой контроля версий::

(анонимно) 17.10.08 в 16:09

0

% echo 'hello world' > hello.txt
% bzr status
unknown:
hello.txt
% bzr add hello.txt
added hello.txt
% bzr status
added:
hello.txt

AlexIljin 24.08.08 в 16:39

0

Если Вы добавите неверный файл, просто используйте bzr remove, чтобы убрать файл из под версификации снова. Эта операция не удаляет рабочую копию в данном случае, что возможно в других случаях [2]_.

(анонимно) 17.10.08 в 16:11

0

.. [2] bzr remove удалит рабочую копию только если она уже под контролем версий, но в ней не было изменений с последней фиксации. Вы можете сохранить файл опцией --keep для bzr remove, или принудительно удалить с --force.

(анонимно) 01.04.09 в 17:03

0

Расположение веток
==============

(анонимно) 01.04.09 в 17:04

0

Вся история хранится в ветке непосредствено в директории с контролируемыми файлами. По-умолчанию, нет отдельного репозитория или базы данных, как это принято в svn или svk. Вы можете выбрать создание репозитория, если захотите (смотрите команду bzr init-repo). Вы можете воспользоваться этим, если у вас очень большие ветки или много веток в небольшом проекте.

(анонимно) 01.04.09 в 17:11

0

Вся история хранится в ветке непосредствено в директории с контролируемыми файлами. По-умолчанию, нет отдельного репозитория или базы данных, как это принято в svn или svk. Вы можете выбрать создание репозитория, если захотите (смотрите команду bzr init-repo). Вы можете воспользоваться этим, если у вас очень большие ветки или много веток в небольшом проекте.

(анонимно) 01.04.09 в 17:11

0

Обычно, чтобы сослаться на ветку в файловой системе компьютера, нужно просто указать имя директории, которая содержит эту ветку. bzr так же поддерживает доступ к веткам через http и sftp, например:

(анонимно) 01.04.09 в 17:14

0

% bzr log http://bazaar-vcs.org/bzr/bzr.dev/
% bzr log sftp://bazaar-vcs.org/bzr/bzr.dev/

AlexIljin 24.08.08 в 16:39

0

Проинсталлировав bzr плугины Вы сможете также получать доступ к веткам используя rsync протокол.

(анонимно) 17.10.08 в 16:16

0

Смотрите секцию Публикация вашей ветви_ для более детальной информации о том, как положить ветку в заданное место.

(анонимно) 17.10.08 в 16:52

0

Просматривание изменений
=================

(анонимно) 17.10.08 в 16:29

0

После завершения работы вы хотите **зафиксировать** её в историю версий. Полезно фиксировать изменения так часто, как добавляется новая функциональность, устраняются ошибки, улучшается код или документация. Рекомендуется, так же, убедиться, что код компилируется и проходит тесты перед фиксацией. Будет уверенность, что каждая ревизия содержится в целостном состоянии. Чтобы убедиться, что фиксируется именно то, что хотите, можете просмотреть изменения. Это вам даст возможность передумать до фиксации изменений.

(анонимно) 01.04.09 в 17:30

0

Две bzr команды частично помогут в этом:
**status** и **diff**.

(анонимно) 17.10.08 в 16:28

0

bzr status
----------

AlexIljin 24.08.08 в 16:39

0

Команда **status** говорит Вам какие изменения были произведены в рабочей директории с момента последней ревизии::

(анонимно) 17.10.08 в 16:13

0

% bzr status
modified:
foo

AlexIljin 24.08.08 в 16:39

0

bzr status скрывает "не интересующие" Вас файлы, которые либо не изменялись, либо игнорируются.

(анонимно) 17.10.08 в 16:15

0

bzr diff
--------

AlexIljin 24.08.08 в 16:39

0
Минутку...

Следующая страница →