‧
3 分钟阅读
富有进取的开始
Metabase 团队
‧ 3 分钟阅读
分享这篇文章
我们将 Metabase 企业版的源代码公开。
自从我们发布 Metabase 的商业版本以来,已经过去一年多了。在过去一年中,我们深入了解了如何运营 OpenCore 模式的业务,以及如何管理 Metabase 的两个版本。
Metabase 商业版是源代码公开的,我们为客户提供了通过 GitHub 访问代码库的选项。代码是从 OSS 仓库 fork 而来,在过去一年中,我们添加了许多仅限企业版的功能。最初,我们在一个私有的 GitHub 仓库中开发企业版,以避免企业版开发影响到 OSS 用户群。我们还希望明确区分两个版本之间的界限,以及哪个许可证适用于哪个代码库。
很快,我们就遇到了一些问题。与 GitLab 的经验类似,我们发现拥有两个独立的仓库会产生大量额外的工作。
具体来说,合并和发布的工作量增加了一倍以上。经常发生大规模的合并冲突,需要花费数小时才能解决。合并过程容易出错,由于 OSS 代码库中的更改破坏了企业版代码库中的假设,我们经常引入错误。虽然我们经常在发布给企业客户之前发现这些错误,但我们也无意中发布了一些令人尴尬的错误。
最初,我们将所有这些都视为支持付费客户的必要工作。但越来越明显的是,这是一种容易出错的无意义的繁琐工作。随着时间的推移,将 OSS 和企业版功能分开的理论优势,被用户遇到错误以及我们的团队浪费时间(本可以用来积极改善用户体验)的现实弊端所淹没。
此外,单独授予付费客户访问企业版源代码权限既耗时又毫无意义 —— 既然我们成功的根源在于我们的开源性质,为什么还要隐藏企业版源代码呢?
像 许多 先行者一样,我们得出的结论是,让我们把时间花在直接改进 Metabase 产品的事情上,而不是冗长且吃力不讨好的内务管理上,这最符合用户的根本利益。
正在发生什么?
- 我们正在发布 Metabase 企业版的源代码
- github.com/metabase/metabase 仓库将包含 OSS 和 Metabase 企业版代码
- 问题跟踪器将合并
- 开源仓库中任何要求企业版功能的问题都将被关闭
为什么?
原因有几个 —— 这将使客户和试用用户可以轻松访问企业版代码库,并将减少我们的团队在解决合并冲突上浪费的时间。我们将把节省下来的时间用于改进产品。
这对未来意味着什么?
我们将在公开环境中开发 OSS 和企业版。企业版客户、试用中的潜在客户以及任何对此感到好奇的人都可以自由查看企业版源代码。
常见问题解答
这是否意味着我将免费为你们的专有代码库做贡献?
除非您真的、真的很想这样做,否则不会。欢迎您查看、研究它,并用它来决定您是否对企业版作为客户感兴趣。
我如何确保我的贡献不会进入专有代码库?
我们所有的企业版功能都在根目录的 “enterprise” 文件夹中。只要您提交的 Pull Request 不包含任何进入此目录的文件,它将成为我们开源产品的一部分。
这是否意味着我可以免费使用 Metabase 企业版?
不。仅仅因为源代码是公开的,并不意味着您可以免费运行它。Metabase 企业版仍需要许可证才能使用。
企业版代码现在公开了,是否意味着它现在是开源的?
不,它不是开源的。它是源代码公开的,这意味着您可以检查、修改和分发修改后的版本,但需遵守您的许可证限制(如有)。