Bazaar

Bazaar (раніше відома як Bazaar-NG, ім'я утиліти командного рядка bzr) розподілена система керування версіями, розробка якої спонсорується фірмою Canonical Ltd.. Система Bazaar розроблена з метою полегшити роботу над розвитком вільних і відкритих проєктів для всіх охочих.

Bazaar
Bazaar logo
Тип розподілена система керування версіями
Автор(и) Martin Pool
Розробники Canonical Ltd. та спільнота
Перший випуск 14 грудня 2007
Стабільний випуск 2.6 (4 серпня 2013 (2013-08-04))
Репозиторій code.launchpad.net/bzr
Операційна система крос-платформовий
Мова програмування Python, Pyrex, C
Стан розробки активний
Ліцензія GPLv2 або новіші[1]
Вебсайт bazaar.canonical.com

 Bazaar у Вікісховищі

Команда розробників фокусується на тому, щоб зробити систему легкою у використанні, але при цьому точною в деталях і дуже гнучкою, що підлаштовується під конкретні потреби користувачів.[2] Також велика увага приділяється питанням роботи з безліччю гілок і їхнім подальшим об'єднанням.[3][4] Bazaar може використовуватися як одним розробником для роботи над численними локальними гілками, так і групою розробників, котрі спільно працюють у мережі.

Система контролю версій Bazaar написана на мові програмування Python. Існують установні пакунки для основних дистрибутивів Linux, інсталятори для Mac OS X і MS Windows. Bazaar — це вільне програмне забезпечення, та від 2008 є частиною проєкту GNU.[5][6] Серед проєктів, що використовують Bazaar можна відзначити Ubuntu, GNU, MySQL, Linux Foundation, Debian, Inkscape та Squid.

Можливості

Команди Bazaar дуже схожі на команди, які використовуються в CVS або SVN. Для створення і підтримки нового проєкту без використання спеціального сервера з репозиторієм користувачеві досить запустити команду bzr init у каталозі, який потрібно помістити під контроль версій.[7]

На відміну від суто розподілених систем контролю версій, які не використовують центральний сервер, Bazaar підтримує роботу як з сервером так і без нього. Можливо навіть використовувати обидва методи одночасно для одного і того ж проєкту. Сайти Launchpad і Sourceforge пропонують вільний хостинг для проєктів, які використовують Bazaar.

Bazaar підтримує роботу напряму з деякими іншими системами контролю версій.[8] Користувачі можуть створювати нові гілки на основі репозиторіїв інших систем (таких як Subversion або Git), робити локальні зміни і фіксувати їх в Bazaar-гілці, і потім відправляти свої зміни назад в оригінальний репозиторій. Bazaar підтримує базові операції з Subversion (необхідний плагін bzr-svn)[9], а також з Git (треба плагін bzr-git)[10]. Також розпочато роботу над підтримкою Mercurial[11]. Плагін bzr-hg вміє поки небагато, проте його функцій досить, щоб відобразити історію ревізій у графічному вигляді.

Bazaar підтримує повний набір символів Unicode в іменах файлів. Система також дозволяє використовувати Unicode для складання коментарів до ревізій, в іменах авторів змін тощо.

Система Bazaar написана на мові Python і має такі особливостями:

  • Висока гнучкість як при централізованому, так і при розподіленому використанні;
  • Швидке створення гілок і засоби для автоматичного злиття змін, включаючи можливість перейменування файлів і директорій;
  • Підтримка всіх основних операційних систем, у тому числі наявність бінарних збірок для Windows і Mac OS X;
  • Компактне зберігання історії;
  • Інтерфейс для взаємодії з іншими системами керування сирцевими текстами, наприклад, наявність засобів імпорту та експорту для Subversion, Git і Mercurial;
  • API для швидкої розробки застосунків на мові Python. На сайті проєкту можна знайти близько 100 різних плагінів.

Публічні сховища c підтримкою Bazaar

Проєкти, що використовують Bazaar

Bazaar використовується як при роботі над багатьма відкритими проєктами, так і низкою комерційних організацій[11]. Список найвідоміших відкритих проєктів, які використовують Bazaar, включає в себе:

Виноски

  1. What is Bazaar?. Архів оригіналу за 14 липня 2013. Процитовано 31 серпня 2011. «Bazaar is an official GNU project, licensed under the GPLv2 or later, at your option.»
  2. Clatworthy, Ian. Version Control: The Future is Adaptive. Архів оригіналу за 28 березня 2012. Процитовано 31 серпня 2011.
  3. Bazaar user reference: команда merge. Архів оригіналу за 19 вересень 2009. Процитовано 31 серпень 2011.
  4. Bazaar user reference: criss-cross merge. Архів оригіналу за 19 вересень 2009. Процитовано 31 серпень 2011.
  5. Pool, Martin (26 лютого 2008). Bazaar is now a GNU project. bazaar-announce mailing list. Процитовано 23 травня 2008.
  6. Pool, Martin (21 травня 2008). Bazaar becomes a GNU project. info-gnu mailing list. Процитовано 23 травня 2008.
  7. bzr man page
  8. Vernooij, Jelmer; John Meinel, Olad Conradi, Martin Pool, Wouter Van Heyst, Aaron Bentley (15 червня 2007). BzrForeignBranches. Архів оригіналу за 28 березня 2012. Процитовано 21 червня 2007.
  9. Vernooij, Jelmer; Mark Lee, Neil Martinsen-Burrell, Robert Collins, Alexandre Vassalotti, Stijn Hoop (7 червня 2007). BzrForeignBranches/Subversion. Архів оригіналу за 28 березня 2012. Процитовано 21 червня 2007.
  10. Vernooij, Jelmer (19 вересня 2009). BzrForeignBranches/Git. Архів оригіналу за 28 березня 2012. Процитовано 31 серпня 2011.
  11. The Bazaar Hg Plugin in Launchpad
  12. Projects using Bazaar. Canonical Ltd. 28 квітня 2008. Архів оригіналу за 28 березня 2012. Процитовано 23 травня 2008.
  13. Mailman source code branches. 4 грудня 2007. Архів оригіналу за 28 березня 2012. Процитовано 23 травня 2008.
  14. Arnö, Kaj (19 червня 2008). Version Control: Thanks, BitKeeper - Welcome, Bazaar. Архів оригіналу за 28 березня 2012. Процитовано 19 червня 2008.
  15. GNU Gnash
  16. Download Gnash
  17. Operational Dynamics Pty Ltd. Get java-gnome!. Архів оригіналу за 28 березня 2012. Процитовано 23 травня 2008.
  18. Squid3VCS — Squid Web Proxy Wiki. Архів оригіналу за 22 лютого 2011. Процитовано 31 серпня 2011.
  19. GNU Emacs is on Bazaar now
  20. Code: Inkscape
  21. Calibre

Посилання

This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.