Bazaar
Bazaar | |
---|---|
![]() | |
![]() | |
Тип | распределённая система управления версиями[вд] |
Автор | Martin Pool |
Разработчики | Canonical Ltd., Проект GNU[2] и John Arbash Meinel[вд] |
Написана на | Python, Pyrex и Си |
Операционная система | кроссплатформенность |
Первый выпуск | 26 марта 2005 |
Последняя версия |
|
Репозиторий | code.launchpad.net/bzr |
Лицензия | GNU GPL 2+[вд][3] |
![]() |
Bazaar (ранее известная как Bazaar-NG, имя утилиты командной строки bzr) — распределённая система управления версиями, разработка которой спонсируется фирмой Canonical. Система Bazaar разработана с целью облегчить работу над развитием свободных и открытых проектов для всех желающих.
Команда разработчиков фокусируется на том, чтобы сделать систему лёгкой в использовании, но при этом точной в деталях и очень гибкой, подстраиваемой под конкретные нужды пользователей.[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]
- SimulIDE
- Ubuntu[19]
Примечания
- ↑ 2.7.0 released — 2016.
- ↑ Bazaar is now a GNU project — 2008.
- ↑ 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 (2008-02-26). "Bazaar is now a GNU project". bazaar-announce (Mailing list). Архивировано 13 апреля 2016. Дата обращения: 23 мая 2008.
- ↑ Pool, Martin (2008-05-21). "Bazaar becomes a GNU project". info-gnu (Mailing list). Архивировано 3 марта 2016. Дата обращения: 23 мая 2008.
- ↑ Plans for Bazaar (неопр.). lists.ubuntu.com. Дата обращения: 12 сентября 2020. Архивировано 1 мая 2021 года.
- ↑ bzr man page (неопр.). Дата обращения: 14 сентября 2009. Архивировано 23 мая 2009 года.
- ↑ 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 (неопр.). Дата обращения: 19 сентября 2009. Архивировано 26 сентября 2006 года.
- ↑ SourceForge Support / Documentation / Bazaar (неопр.). Дата обращения: 19 февраля 2018. Архивировано 16 марта 2022 года.
- ↑ Projects using Bazaar (неопр.). Архивировано из оригинала 28 марта 2012 года.
- ↑ Armagetron Advanced Downloads (неопр.). Дата обращения: 13 ноября 2010. Архивировано 16 ноября 2010 года.
- ↑ Beautiful Soup website (неопр.). Дата обращения: 26 октября 2014. Архивировано 27 марта 2022 года.
- ↑ Ubuntu in Launchpad (неопр.). Canonical. Дата обращения: 21 октября 2008. Архивировано 10 октября 2008 года.
Ссылки
- Официальный сайт (англ.)
- Хостинг для проектов (англ.)
- http://groups.google.ru/group/ru_bzr (рус.) Дискуссионая группа русско-украино-язычных пользователей
- Блог «Базарный день» (рус.) посвящён описанию приёмов работы, рецептам, трюкам и прочей информации
- #bzr (англ.) IRC конференция
- Описание особенностей и принципов работы с Bazaar (рус.)
- Кратко о Bazaar для пользователей других DVCS (рус.)