Ubuntu 开发应使用哪个 VCS?

Ubuntu 开发应使用哪个 VCS?

我想开始为 Ubuntu 项目做贡献,同时经历初学者指南,我注意到 Ubuntu 开发的建议 VCS 是市场

我目前使用Git并且发现它非常容易使用。

在这种情况下,采用 Bazaar 来执行我的 Ubuntu 项目是否明智?

如果有的话,Bazaar 在哪些方面比 Git 更好?

答案1

通常情况下,答案是“视情况而定”。这取决于你希望做出什么样的贡献。Ubuntu 是一个由许多不同软件包组成的庞大项目。

有些,如 Unity 或 Software Center,是作为 Ubuntu 项目的一部分开发的。“上游”代码位于 bazaar 存储库中,为这些项目做出贡献的最佳方式是在 Launchpad 上提出合并建议。它们的开发模型与此过程紧密相关,每次提交进入主干之前都会进行持续集成测试。

对于大多数其他软件包,Ubuntu 只是“下游”。这些软件要么是 Ubuntu 开发人员开发的软件包,要么来自 Debian。这些数千个软件包的上游开发当然是在从 CVS 到 git 的许多不同 VCS 中完成的。例如,GNOME 项目都存在于 git 中。为了使用 DVCS 以统一的方式处理这些软件包,Ubuntu 需要做出选择。出于多种原因,选择 Bazaar 对我们来说是有意义的。Canonical 是 Ubuntu 和 Bazaar 的企业赞助商这一事实显然是一个主要因素。Ubuntu 从中受益匪浅,因为 Bazaar 上游资源通常用于专门处理与 Ubuntu 的集成以及 Ubuntu 开发人员确定的痛点。Bazaar 和 Launchpad 已经紧密联系在一起。由于 Ubuntu 已经使用 Launchpad 进行错误跟踪,因此将开发集中在那里是有意义的。

  • 因此,如果您打算为 Ubuntu 的“上游”项目之一做出贡献,Bazaar 无疑是您的最佳选择。

  • 如果您正在开发自己的软件并希望将其包含在 Ubuntu 中,那么您可以使用任何您想要的 VCS。

  • 如果您想为 Ubuntu 中的软件打包和软件包修复做出贡献,这些软件包都会被导入到 Bazaar 存储库中,但如果您不习惯,则无需使用它们。这样做是为了让那些想要它的人拥有 DVCS 的强大功能,但您仍然可以通过所谓的“传统包装方法”找不到更好的词来形容。在 Bazaar 被用于 Ubuntu 开发之前,这些是为 Ubuntu 做贡献的典型方法。

至于 Bazaar 在哪些方面优于 Git,这似乎是一个不同的问题。

相关内容