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).