Bazaar
Тип | розподілена система керування версіями |
---|---|
Автор | Martin Pool |
Розробники | Canonical Ltd. та спільнота |
Перший випуск | 26 березня 2005 |
Стабільний випуск | 2.7.0 (15 лютого 2016 ) |
Операційна система | крос-платформовий |
Мова програмування | Python, Pyrex , C |
Стан розробки | активний |
Ліцензія | GPLv2 або новіші[2] |
Репозиторій | code.launchpad.net/bzr |
Вебсайт | bazaar.canonical.com |
Bazaar (раніше відома як Bazaar-NG, ім'я утиліти командного рядка bzr) — розподілена система керування версіями, розробка якої спонсорується фірмою Canonical Ltd.. Система Bazaar розроблена з метою полегшити роботу над розвитком вільних і відкритих проєктів для всіх охочих.
Команда розробників фокусується на тому, щоб зробити легку у використанні, точну в деталях і дуже гнучку систему, що підлаштовується під конкретні потреби користувачів.[3] Також велика увага приділяється питанням роботи з безліччю гілок і їхнім подальшим об'єднанням.[4][5] Bazaar може використовуватися як одним розробником для роботи над численними локальними гілками, так і групою розробників, котрі спільно працюють у мережі.
Система контролю версій Bazaar написана на мові програмування Python. Існують установні пакунки для основних дистрибутивів Linux, інсталятори для Mac OS X і MS Windows. Bazaar — це вільне програмне забезпечення, та від 2008 є частиною проєкту GNU.[6][7] Серед проєктів, що використовують Bazaar можна відзначити Ubuntu, GNU, MySQL, Linux Foundation, Debian, Inkscape та Squid.
Команди Bazaar дуже схожі на команди, які використовуються в CVS або SVN. Для створення і підтримки нового проєкту без використання спеціального сервера з репозиторієм користувачеві досить запустити команду bzr init у каталозі, який потрібно помістити під контроль версій.[8]
На відміну від суто розподілених систем контролю версій, які не використовують центральний сервер, Bazaar підтримує роботу як з сервером так і без нього. Можливо навіть використовувати обидва методи одночасно для одного і того ж проєкту. Сайти Launchpad і Sourceforge пропонують вільний хостинг для проєктів, які використовують Bazaar.
Bazaar підтримує роботу напряму з деякими іншими системами контролю версій.[9] Користувачі можуть створювати нові гілки на основі репозиторіїв інших систем (таких як Subversion або Git), робити локальні зміни і фіксувати їх в Bazaar-гілці, а потім відправляти свої зміни назад в оригінальний репозиторій. Bazaar підтримує базові операції з Subversion (необхідний плагін bzr-svn)[10], а також з Git (треба плагін bzr-git)[11]. Також розпочато роботу над підтримкою Mercurial[12]. Плагін bzr-hg вміє поки небагато, проте його функцій досить, щоб відобразити історію ревізій у графічному вигляді.
Bazaar підтримує повний набір символів Unicode в іменах файлів. Система також дозволяє використовувати Unicode для складання коментарів до ревізій, в іменах авторів змін тощо.
Система Bazaar написана на мові програмування Python і має такі особливостями:
- Висока гнучкість як при централізованому, так і при розподіленому використанні;
- Швидке створення гілок і засоби для автоматичного злиття змін, включаючи можливість перейменування файлів і директорій;
- Підтримка всіх основних операційних систем, у тому числі наявність бінарних збірок для Windows і Mac OS X;
- Компактне зберігання історії;
- Інтерфейс для взаємодії з іншими системами керування сирцевими текстами, наприклад, наявність засобів імпорту та експорту для Subversion, Git і Mercurial;
- API для швидкої розробки застосунків на мові програмування Python. На сайті проєкту можна знайти близько 100 різних плагінів.
Bazaar використовується як при роботі над багатьма відкритими проєктами, так і низкою комерційних організацій[11]. Список найвідоміших відкритих проєктів, які використовують Bazaar, включає в себе:
- GNU Mailman,[13][14]
- MySQL,[15]
- Gnash[16][17]
- GNOME bindings for Java.[13][18]
- Squid[19]
- GNU Emacs[20]
- Inkscape[21]
- Calibre[22]
- ↑ Bazaar is now a GNU project — 2008.
- ↑ What is Bazaar?. Архів оригіналу за 14 липня 2013. Процитовано 31 серпня 2011.
Bazaar is an official GNU project, licensed under the GPLv2 or later, at your option.
- ↑ Clatworthy, Ian. Version Control: The Future is Adaptive. Архів оригіналу за 28 березня 2012. Процитовано 31 серпня 2011.
- ↑ Bazaar user reference: команда merge. Архів оригіналу за 19 вересень 2009. Процитовано 31 серпень 2011.
- ↑ Bazaar user reference: criss-cross merge. Архів оригіналу за 19 вересень 2009. Процитовано 31 серпень 2011.
- ↑ Pool, Martin (26 лютого 2008). Bazaar is now a GNU project. bazaar-announce (Список розсилки). Архів оригіналу за 13 квітня 2016. Процитовано 23 травня 2008.
- ↑ Pool, Martin (21 травня 2008). Bazaar becomes a GNU project. info-gnu (Список розсилки). Архів оригіналу за 3 березня 2016. Процитовано 23 травня 2008.
- ↑ bzr man page. Архів оригіналу за 23 травня 2009. Процитовано 22 січня 2009.
- ↑ Vernooij, Jelmer; John Meinel, Olad Conradi, Martin Pool, Wouter Van Heyst, Aaron Bentley (15 червня 2007). BzrForeignBranches. Архів оригіналу за 28 березня 2012. Процитовано 21 червня 2007.
- ↑ Vernooij, Jelmer; Mark Lee, Neil Martinsen-Burrell, Robert Collins, Alexandre Vassalotti, Stijn Hoop (7 червня 2007). BzrForeignBranches/Subversion. Архів оригіналу за 28 березня 2012. Процитовано 21 червня 2007.
- ↑ Vernooij, Jelmer (19 вересня 2009). BzrForeignBranches/Git. Архів оригіналу за 28 березня 2012. Процитовано 31 серпня 2011.
- ↑ The Bazaar Hg Plugin in Launchpad. Архів оригіналу за 26 вересня 2006. Процитовано 31 серпня 2011.
- ↑ а б Projects using Bazaar. Canonical Ltd. 28 квітня 2008. Архів оригіналу за 28 березня 2012. Процитовано 23 травня 2008.
- ↑ Mailman source code branches. 4 грудня 2007. Архів оригіналу за 28 березня 2012. Процитовано 23 травня 2008.
- ↑ Arnö, Kaj (19 червня 2008). Version Control: Thanks, BitKeeper - Welcome, Bazaar. Архів оригіналу за 28 березня 2012. Процитовано 19 червня 2008.
- ↑ GNU Gnash. Архів оригіналу за 14 травня 2019. Процитовано 31 серпня 2011.
- ↑ Download Gnash. Архів оригіналу за 24 листопада 2021. Процитовано 20 квітня 2022.
- ↑ Operational Dynamics Pty Ltd. Get java-gnome!. Архів оригіналу за 28 березня 2012. Процитовано 23 травня 2008.
- ↑ Squid3VCS — Squid Web Proxy Wiki. Архів оригіналу за 22 лютого 2011. Процитовано 31 серпня 2011.
- ↑ GNU Emacs is on Bazaar now. Архів оригіналу за 17 жовтня 2011. Процитовано 31 серпня 2011.
- ↑ Code: Inkscape. Архів оригіналу за 2 жовтня 2011. Процитовано 31 серпня 2011.
- ↑ Calibre. Архів оригіналу за 11 жовтня 2011. Процитовано 31 серпня 2011.
- Офіційний сайт [Архівовано 26 вересня 2009 у Wayback Machine.] (англ.)
- Хостинг для проєктів [Архівовано 13 квітня 2011 у Wayback Machine.] (англ.)
- http://groups.google.ru/group/ru_bzr (рос.) Дискусійна група російсько-україномовних користувачів
- Блог «Базарний день» [Архівовано 12 серпня 2011 у Wayback Machine.] (рос.) присвячений опису прийомів роботи, рецептам, трюкам та іншій інформації
- #bzr (англ.) IRC конференція
- Опис особливостей і принципів роботи з Bazaar [Архівовано 12 січня 2012 у Wayback Machine.] (рос.)
- Коротко про Bazaar для користувачів інших DVCS [Архівовано 15 листопада 2010 у Wayback Machine.] (рос.)