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