GNU Bazaar
原作者 | Martin Pool |
---|---|
開發者 | Canonical公司和社羣 |
首次釋出 | 2005年3月26日[1] |
目前版本 | 2.7.0[2](2016年2月15日) |
原始碼庫 | code |
程式語言 | Python 2,Pyrex(可選),C語言 |
類型 | 分散式版本控制 |
特許條款 | GPLv2或更新[3] |
網站 | bazaar |
GNU Bazaar(以前稱為Bazaar-NG,命令列中稱爲bzr
)是由Canonical贊助開發的分散式和主從式版本控制系統。
Bazaar 可以由一個開發本地內容的多個分支的開發人員使用,也可以由跨網絡協同運作的團隊使用。
Bazaar 是用Python編寫的,有適用於主要Linux發行版、 Mac OS X和Microsoft Windows的軟件套件。 Bazaar 是自由軟件,是GNU 專案的一部分。[4][5]
特徵
[編輯]Bazaar 命令類似於CVS或Subversion中的命令。通過在人們希望版本化的目錄中呼叫bzr init
,可以在沒有遠端儲存庫伺服器的情況下啟動和維護新專案。[6]
與不使用中央伺服器的純分散式版本控制系統相比,Bazaar 支援使用或不使用中央伺服器,即可以連接伺服器上載版本,也可以只作爲本機版本控制使用。可以在同一個專案中同時使用這兩種方法。Launchpad和SourceForge網站為 Bazaar 管理的專案提供免費寄存服務。
Bazaar 支援與部分版本控制系統一起工作。[7]這允許用戶從另一個系統(例如Subversion[8])分支,進行本地更改並將它們提交到 Bazaar 分支,然後再將它們合併回另一個系統。Git[9]和Mercurial也提供唯讀訪問權限。[10] Bazaar 還允許與許多其他系統(包括CVS、Darcs、Git、Perforce、Mercurial )進行互操作,允許匯入和匯出歷史。[11]
Bazaar 支援名稱來自完整Unicode集的檔案。它還允許提交訊息、提交者名稱等使用 Unicode。
歷史
[編輯]Baz:早期的 Canonical 版本控制系統
[編輯]「Bazaar」這個名字最初是由GNU arch客戶端tla的一個分支使用的。這個分支在2008年為了和現在的 Bazaar 軟件區分開來,改名爲Baz。[12] Baz 於 2004 年 10 月由 Canonical 員工 Robert Collins[13]宣佈並一直維持到 2005 年。當時名為Bazaar-NG (現在的 Bazaar)的專案被宣佈為 Baz 的繼任者 [14]Baz 已被棄用並停止開發。[15][16] Baz 的最後一個版本是 1.4.3 版,於2005年10月釋出。[17]計劃中的 Baz 1.5 版本於2006年被放棄。[18]
Bazzar
[編輯]2005 年 2 月,曾在會談中和他的網誌中描述和審查過許多版本控制系統的開發人員 Martin Pool 宣佈,他已被 Canonical 聘用,並負責「構建開源黑客會喜歡使用的分散式版本控制系統」。[19]公共網站和郵寄清單於2005年3月建立,第一個被編號的預釋出版本 0.0.1 於 2005 年 3 月 26 日釋出。[20][21][22]
Bazaar 從一開始就被認為是與 GNU arch 和 Baz 不同的軟件。它具有不同的命令集,並且是完全不同的代碼庫和設計。 Bazaar 最初的目的是作為後來整合到 Baz 中的功能的測試平台,但到 2005 年年中,許多主要的 Baz 開發人員已經開始主要直接在 Bazaar 上工作,而 Baz 被放棄了。[16]
Bazaar 1.0 版於 2007 年 12 月釋出。[23]2008 年 2 月,Bazaar 成為 GNU 專案。[4]2012年4月,Martin Pool 離開了 Canonical[24],專案的開發步伐放緩。[25]根據 Jelmer Vernooij 的說法,Canonical 的 Bazaar 團隊的成員在 2012 年初被分配到不同的任務,他本人在7年來為該專案做出貢獻後,於2012年底停止了對 Bazaar 的貢獻。[26]2013年3月,關於 Bazaar 是否仍然有效維護以及 Emacs 是否應該轉移到另一個版本控制系統的討論在GNU Emacs郵寄清單開始。[27]2014 年 1 月, Eric Raymond提議並協調將GNU Emacs從 Bazaar 過渡到git版本控制系統,[28]這一過渡於 2014 年 11 月完成。[29]同樣,Bugzilla專案在2014 3月從 Bazaar 改爲使用 git,其中一個原因是 Bazaar 幾乎已被放棄的印象:「每個月可能有 2-3 次向主幹提交。一般來說,修復 Bazaar 中的錯誤的時間似乎也很長。」[30]
2.7.0 版本於 2016 年 2 月釋出。[31]
Breezy
[編輯]Bazaar 在 2017 年被分叉為Breezy ,以允許進行向後不相容的更改,例如從 Python 2 遷移到 Python 3 並放棄對舊版本 Windows 的支援。[32]
採用
[編輯]原始碼寄存
[編輯]以下網站為 Bazaar 儲存庫提供免費的原始碼寄存:
- Launchpad
- SourceForge(但不接受新建Bazaar項目[33])
使用 Bazaar 的專案
[編輯]使用 Bazaar 進行版本控制的著名專案包括:
參見
[編輯]- Breezy
- 分散式版本控制
- 版本控制軟件比較
- 自由軟件寄存服務比較
- 大教堂和市集(名稱來源)
參考來源
[編輯]- ^ bzr 0.0.1 released. [2022-03-28]. (原始內容存檔於2016-03-03).
- ^ 2.7.0 released. 2016年2月15日 [2016年4月10日].
- ^ What is Bazaar?. [2022-03-28]. (原始內容存檔於2013-07-14).
Bazaar is an official GNU project, licensed under the GPLv2 or later, at your option.
- ^ 4.0 4.1 Pool, Martin. Bazaar is now a GNU project. bazaar-announce (郵寄清單). 2008-02-26 [2008-05-23]. (原始內容存檔於13 April 2016).
- ^ Pool, Martin. Bazaar becomes a GNU project. info-gnu (郵寄清單). 2008-05-21 [2008-05-23]. (原始內容存檔於3 March 2016).
- ^ bzr man page. [2009-01-22]. (原始內容存檔於2009-05-23).
- ^ Olad Conradi, Jelmer. BzrForeignBranches. 2007-06-15 [2007-06-21]. (原始內容存檔於7 June 2007).
- ^ Neil Martinsen-Burrell, Jelmer. BzrForeignBranches/Subversion. 2007-06-07 [2007-06-21]. (原始內容存檔於26 June 2007).
- ^ bzr git support plugin in Launchpad. [2022-03-28]. (原始內容存檔於2006-09-26).
- ^ The Bazaar Hg Plugin in Launchpad. [2022-03-28]. (原始內容存檔於2006-09-26).
- ^ fastimport documentation. [2022-03-28]. (原始內容存檔於2016-12-29).
- ^ Matthew Hannigan, Martin. Branding. 2007-03-09 [2007-06-16]. (原始內容存檔於15 July 2007).
- ^ Collins, Robert. Announce: Bazaar. Gnu-arch-users (郵寄清單). 2004-10-29 [2007-06-16]. (原始內容存檔於3 March 2016).
- ^ Moy, Matthieu. Future of GNU Arch, bazaar and bazaar-ng ... ?. bazaar-old (郵寄清單). 2005-08-20 [2007-06-16]. (原始內容存檔於17 August 2014).
- ^ Baz1x - Bazaar Version Control. 2006-07-24 [2008-01-17]. (原始內容存檔於7 January 2008).
- ^ 16.0 16.1 Martin Pool, John. HistoryOfBazaar. 2006-07-26 [2008-02-20]. (原始內容存檔於2009-02-26).
- ^ Moy, Matthieu. ReleaseNotes1.4.3. 2005-10-25 [2007-06-16]. (原始內容存檔於2007-09-28).
- ^ Collins, Robert. releasing 1.5. bazaar-old (郵寄清單). 2006-06-30 [2007-06-16]. (原始內容存檔於12 May 2011).
- ^ Pool, Martin. sourcefrog: A beginning. 2005-02-01 [2008-05-23]. (原始內容存檔於2012-07-22).
- ^ Pool, Martin. sourcefrog: A beginning. 2005-02-01 [2008-05-23]. (原始內容存檔於2012-07-22).
- ^ Bentley, Aaron. Re: State of the Arches. gnu-arch-users (郵寄清單). 2005-03-23 [2008-05-23]. (原始內容存檔於3 March 2016).
For completeness, it's probably worth mentioning that bazaar-ng (www.bazaar-ng.org) is another rcs system sponsored by Canonical
- ^ Pool, Martin. bzr 0.0.1 released. bazaar (郵寄清單). 2005-03-26 [2008-06-12]. (原始內容存檔於3 March 2016).
- ^ Canonical Releases Version 1.0 of Bazaar Version Control Tool for Efficient Developer Collaboration (新聞稿). Canonical. 2007-12-14 [2008-05-23]. (原始內容存檔於12 May 2008).
- ^ Pool, Martin. leaving Canonical. bazaar (郵寄清單). 2012-04-12 [2012-12-09]. (原始內容存檔於4 March 2016).
- ^ Corbet, Jonathan. Bazaar on the slow track. LWN.net. 2012-09-11 [2012-11-14]. (原始內容存檔於2016-03-04).
- ^ Vernooij, Jelmer. Bazaar-NG: 7 years of hacking on a distributed version control system. 2012-12-19 [2012-12-21]. (原始內容存檔於2015-11-05).
- ^ On the subject of Git, Bazaar, and the future of Emacs development. emacs-devel. 26 March 2013 [30 March 2013]. (原始內容存檔於2016-06-24).
- ^ bzr is dying; Emacs needs to move. emacs-devel. 1 January 2014 [10 January 2014]. (原始內容存檔於2017-01-04).
- ^ Emacs git conversion is done. [2022-03-28]. (原始內容存檔於2017-01-05).
- ^ Bugzilla:Migrating to git - MozillaWiki. 19 March 2014 [20 April 2014]. (原始內容存檔於2016-09-18).
- ^ Wilbur, Richard. 2.7.0 released. Canonical. 15 February 2016 [17 February 2016]. (原始內容存檔於2016-09-24).
- ^ Plans for Bazaar. lists.ubuntu.com. [2020-09-12]. (原始內容存檔於2021-05-01).
- ^ SourceForge Support / Documentation / Bazaar. [2022-03-28]. (原始內容存檔於2022-03-16).
- ^ Armagetron Advanced Downloads. [2010-11-13]. (原始內容存檔於16 November 2010).
- ^ Beautiful Soup website. [2014-10-26]. (原始內容存檔於2022-03-27).
- ^ Ubuntu in Launchpad. Canonical. [2008-10-21]. (原始內容存檔於10 October 2008).