diff options
Diffstat (limited to 'doc/ru/user-guide/core_concepts.txt')
-rw-r--r-- | doc/ru/user-guide/core_concepts.txt | 115 |
1 files changed, 115 insertions, 0 deletions
diff --git a/doc/ru/user-guide/core_concepts.txt b/doc/ru/user-guide/core_concepts.txt new file mode 100644 index 0000000..b8eb15c --- /dev/null +++ b/doc/ru/user-guide/core_concepts.txt @@ -0,0 +1,115 @@ +Основные концепции +================== + +Простая модель для пользователя +------------------------------- + +Для использования Bazaar нужно понимать четыре основные концепции: + +* **Ревизия** - снимок файлов с которыми вы работаете. + +* **Рабочее дерево** - каталог содержащий файлы и каталоги под контролем версий + +* **Ветка** - упорядоченный набор ревизий, описывающий историю набора файлов. + +* **Репозиторий** - хранилище ревизий. + +Давайте рассмотрим каждую концепцию более детально. + +Ревизия +------- + +Ревизия - это *снимок* состояния дерева файлов и каталогов включающий их +содержимое и форму. С ревизией так же связаны некоторые мета-данные, например: + +* Кто зафиксировал ревизию +* Когда ревизия была зафиксирована +* Комментарий к ревизии +* Родительские ревизии от которых была унаследована данная ревизия + +Ревизии не изменяются и могут быть глобально и уникально идентифицированы +*идентификатором ревизии*. Пример идентификатора:: + + pqm@pqm.ubuntu.com-20071129184101-u9506rihe4zbzyyz + +Идентификаторы ревизий создаются во время фиксации, или, в случае импорта из +других систем, в момент импорта. Хотя идентификаторы ревизий необходимы для +внутреннего использования и интеграции с внешними инструментами, специфичные +для веток *номера ревизий* предпочтительны для людей. + +Номера ревизий - это разделенные точками десятичные идентификаторы, такие как +1, 42 и 2977.1.59, которые отслеживают путь через граф номеров ревизий на +ветке. Номера ревизий обычно короче чем идентификаторы ревизий и, в пределах +одной ветки, могут сравниваться друг с другом для получения картины их +отношений. Например, ревизия 10 - это основная ревизия (см. ниже) следующая +непосредственно после ревизии 9. Номера ревизий создаются налету, при +выполнении каждой команды, т.к. они зависят от ревизии являющейся верхушкой +(т.е. самой последней ревизией) на ветке. + +Смотрите `Определение ревизий`_ в приложениях для более детального описания +огромного количества методов задания ревизий и их диапазонов в Bazaar и +`Понимание номеров ревизий`_ для более детального описания нумерации ревизий. + +.. *TODO: добавить диаграмму* + +Рабочее дерево +-------------- + +Рабочее дерево - это *каталог под контролем версий* содержащий файлы которые +может редактировать пользователь. Рабочее дерево связано с *веткой*. + +Многие команды используют рабочее дерево как контекст, например ``commit`` +создает новую ревизию используя текущее содержимое файлов в рабочем дереве. + +.. *TODO: добавить диаграмму* + +Ветка +----- + +В простейшем случае, ветка - это *упорядоченная серия ревизий*. Самая последняя +ревизия известна как *верхушка*. + +Ветки могут быть разделены и *объединены* обратно, формируя *граф* ревизий. +Технически, граф показывает прямые отношения (между родительской и дочерними +ревизиями) и не имеет петель, и известен как *направленный ациклический граф* +(directed acyclic graph (DAG)). + +Но не стоит бояться этого названия. Основные вещи которые нужно помнить: + +* Основная линия разработки внутри графа называется *основная линия*, + или просто *левая сторона*. + +* Ветка может иметь другие линии разработки и в этом случае они начинаются + в одной точке и заканчиваются в другой. + +.. *TODO: добавить диаграмму* + +Репозиторий +----------- + +Репозиторий - это просто *хранилище ревизий*. В простейшем случае, каждая ветка +имеет свой собственный репозиторий. В других случаях имеет смысл разделять +репозиторий между ветками для оптимизации дискового пространства. + +.. *TODO: добавить диаграмму* + +Складывая концепции вместе +-------------------------- + +Как только вы поняли описанные выше концепции, различные пути использования +Bazaar станут более понятными. Простейший способ использования Bazaar - это +использовать *самостоятельное дерево*, совмещающее рабочее дерево, ветку и +репозиторий в одном месте. Другие часто используемые сценарии включают: + +* `Разделяемые репозитории <#a-reminder-about-shared-repositories>`_ - + рабочее дерево и ветка находятся вместе, но репозиторий находится в + каталоге выше. + +* `Стек веток <#using-stacked-branches>`_ - ветка хранит только уникальные + для нее ревизии и использует родительский репозиторий для общих ревизий. + +* `Легковесные рабочие копии <#getting-a-lightweight-checkout>`_ - + ветка хранится в другом месте по сравнению с рабочим деревом. + +Лучший путь для использования Bazaar конечно зависит от ваших потребностей. +Давайте дальше рассмотрим некоторые часто употребляемые способы использования. |