Bazaar
Bazaar (ранее известная как Bazaar-NG, имя утилиты командной строки bzr) — распределённая система управления версиями, разработка которой спонсируется фирмой Canonical. Система Bazaar разработана с целью облегчить работу над развитием свободных и открытых проектов для всех желающих.
Bazaar | |
---|---|
![]() | |
![]() | |
Тип | распределённая система управления версиями[d] |
Автор | Martin Pool |
Разработчик | Canonical Ltd. и Проект GNU[1] |
Написана на | Python, Pyrex и Си |
Операционная система | кроссплатформенность |
Первый выпуск | 26 марта 2005 |
Последняя версия |
|
Лицензия | GNU GPL 2+[3] |
Сайт | bazaar.canonical.com |
![]() |
Команда разработчиков фокусируется на том, чтобы сделать систему лёгкой в использовании, но при этом точной в деталях и очень гибкой, подстраиваемой под конкретные нужды пользователей.[4] Также большое внимание уделяется вопросам работы со множеством веток и их последующим объединением.[5][6] Bazaar может использоваться как одним разработчиком для работы над множеством локальных веток, так и группой разработчиков, совместно работающих в сети.
Система контроля версий Bazaar написана на языке программирования Python. Существуют установочные пакеты для основных дистрибутивов Linux, инсталляторы для Mac OS X и MS Windows. Bazaar — это свободное программное обеспечение, в настоящее время является частью проекта GNU.[7][8]
В 2017м году разработчиками было создано ответвление под именем Breezy с целью перенести код с Python 2 на Python 3, удалить старую логику совместимости с целью улучшить кодовую базу, а также устранить необходимость лицензионного соглашения с Canonical.[9]
Возможности
Команды Bazaar очень похожи на команды, используемые в CVS или SVN. Для создания и поддержки нового проекта без использования специального сервера с репозиторием пользователю достаточно запустить команду bzr init в том каталоге, который нужно поместить под контроль версий.[10]
В отличие от чисто распределённых систем контроля версий, которые не используют центральный сервер, Bazaar поддерживает работу как с сервером так и без него. Возможно даже использовать оба метода одновременно для одного и того же проекта. Сайты Launchpad и SourceForge предлагают свободный хостинг для проектов, которые используют Bazaar.
Bazaar поддерживает работу напрямую с некоторыми другими системами контроля версий.[11] Пользователи могут создавать новые ветки на основе репозиториев других систем (таких как Subversion или Git), делать локальные изменения и фиксировать их в Bazaar-ветке, и затем отправлять свои изменения назад в оригинальный репозиторий. Bazaar поддерживает базовые операции с Subversion (требуется плагин bzr-svn)[12], а также с Git (требуется плагин bzr-git)[13] Также начата работа над поддержкой Mercurial[14]. Плагин bzr-hg умеет пока немногое, однако его функций достаточно, чтобы отобразить историю ревизий в графическом виде.
Bazaar поддерживает полный набор символов Unicode в именах файлов. Система также позволяет использовать Unicode для составления комментариев к ревизиям, в именах авторов изменений и т. д.
Публичные хранилища c поддержкой Bazaar
- Launchpad
- GNU Savannah
- SourceForge (недоступно для новых проектов[15])
Проекты, использующие Bazaar
Bazaar используется как при работе над некоторыми открытыми проектами, так и рядом коммерческих организаций[16]. Список наиболее известных открытых проектов, которые используют Bazaar, включает в себя:
- Armagetron Advanced[17]
- Beautiful Soup[18]
- Ubuntu[19]
Примечания
- Bazaar is now a GNU project — 2008.
- 2.7.0 released — 2016.
- http://wiki.bazaar.canonical.com/Welcome
- Clatworthy, Ian Version Control: The Future is Adaptive (недоступная ссылка). Архивировано 28 марта 2012 года.
- Bazaar user reference: команда merge Архивировано 19 сентября 2009 года.
- Bazaar user reference: criss-cross merge Архивировано 19 сентября 2009 года.
- Pool, Martin Bazaar is now a GNU project . Список рассылки bazaar-announce (26 февраля 2008). Дата обращения: 23 мая 2008.
- Pool, Martin Bazaar becomes a GNU project . Список рассылки info-gnu (21 мая 2008). Дата обращения: 23 мая 2008.
- Plans for Bazaar . lists.ubuntu.com. Дата обращения: 12 сентября 2020.
- bzr man page
- Vernooij, Jelmer; John Meinel, Olad Conradi, Martin Pool, Wouter Van Heyst, Aaron Bentley. BzrForeignBranches (недоступная ссылка) (15 июня 2007). Дата обращения: 21 июня 2007. Архивировано 28 марта 2012 года.
- Vernooij, Jelmer; Mark Lee, Neil Martinsen-Burrell, Robert Collins, Alexandre Vassalotti, Stijn Hoop. BzrForeignBranches/Subversion (недоступная ссылка) (7 июня 2007). Дата обращения: 21 июня 2007. Архивировано 28 марта 2012 года.
- Vernooij, Jelmer BzrForeignBranches/Git (недоступная ссылка) (19 сентября 2009). Архивировано 28 марта 2012 года.
- The Bazaar Hg Plugin in Launchpad
- SourceForge Support / Documentation / Bazaar
- Projects using Bazaar (недоступная ссылка). Архивировано 28 марта 2012 года.
- Armagetron Advanced Downloads . Дата обращения: 13 ноября 2010. Архивировано 16 ноября 2010 года.
- Beautiful Soup website . Дата обращения: 26 октября 2014.
- Ubuntu in Launchpad . Canonical. Дата обращения: 21 октября 2008. Архивировано 10 октября 2008 года.
Ссылки
- Официальный сайт (англ.)
- Хостинг для проектов (англ.)
- http://groups.google.ru/group/ru_bzr (рус.) Дискуссионая группа русско-украино-язычных пользователей
- Блог «Базарный день» (рус.) посвящён описанию приёмов работы, рецептам, трюкам и прочей информации
- #bzr (англ.) IRC конференция
- Описание особенностей и принципов работы с Bazaar (рус.)
- Кратко о Bazaar для пользователей других DVCS (рус.)