Beamer 擅长什么
值得先说这一点,因为这决定了切换是否真的有帮助。Beamer 设置迅速,几乎不需要工程时间,并能通过一个编辑器同时提供托管页面和应用内 widget。如果你的限制条件是没人有时间构建任何东西,这就是一个真正的优势,大多数替代方案都无法超越。
团队为什么寻找替代方案
- widget 看起来不像自家产品。它在一定程度上可以重新设置样式,但超过那个程度之后,你就要与它对抗。拥有强大设计体系的团队往往最先遇到这个问题。
- 条目是手动撰写的。每次发布之后都需要有人打开编辑器,而这正是繁忙的一周里容易被跳过的步骤。
- changelog 存放在他们的域名下,而不是你的域名下,因此流量和搜索价值也流向了那里,而不是你的网站。
- 他们希望把条目作为数据获取,以便在自己的界面中渲染或推送到其他地方,而不是作为一个 widget 和一个页面。
深色模式上线了
在设置中开启,或让它跟随系统主题。
根据你真正想要的东西来选择替代方案
如果你想要同样的东西,只是换个样式
AnnounceKit 是最接近的等价物:托管 widget、托管页面、一个编辑器,以及对谁能看到哪条公告拥有更多的控制权。切换主要是内容迁移,而不是工作方式的改变。
如果你还想要反馈闭环
Canny、Frill 和 Featurebase 把 changelog 放在功能投票、公开 roadmap 和反馈收件箱旁边。如果你反正都打算单独购买这些功能,可以选择其中之一;如果你只想要发布说明,就跳过它们,因为你会为了用一个模块而为一整套套件付费。
如果你希望它自己撰写
LaunchNotes 和 Released 都会根据你的团队已经产出的内容来构建 changelog,Released 尤其依托 Jira 的 issue。Changeloop 则是根据已合并的 pull request 来做这件事:每次合并生成一条条目,过滤掉依赖更新和重构,并在发布前保留草稿供你编辑。
如果你希望它成为你产品的一部分
这正是 Beamer 在结构上做不到的事情,也是我们自己产品存在的原因。Changeloop 会发布到一个对任意来源开放 CORS 的公开 JSON feed,因此你的 changelog 可以在你自己的域名上,用你自己的组件,用大约十行代码渲染出来。widget 和托管页面在这里只是备用方案,而不是产品本身。
如果你只想要仓库中的一个文件
git-cliff 会在 CI 中根据 conventional commits 构建一个 CHANGELOG.md 文件。免费,不需要托管任何东西,对于许多从未需要过 widget 的开源项目来说,这就是正确答案。
什么时候不该切换
如果 widget 运行良好,没有人抱怨样式问题,而且有人可靠地在撰写条目,那么切换只会让你付出迁移成本,却收获甚微。迁移最有力的理由是结构性的:你希望 changelog 放在自己的域名上,或者希望它由仓库生成而不是手动撰写。这两者都不会因为把一个托管 widget 换成另一个而得到解决。
常见问题
我们能迁移现有的条目吗?
在做出承诺之前,先问清楚你要迁移到的工具能导入什么,也问清楚 Beamer 能导出什么。这正是迁移过程中把一个上午的工作变成两周的那一部分。
如果我们迁移到 feed,会失去应用内 widget 吗?
不会。Changeloop 也提供一个 widget,只需两行 HTML 代码,并渲染在 shadow root 中,因此既不会继承你的样式,也不会泄漏到其中。区别在于,widget 是备用方案,而不是唯一选项:同样的条目也存在于一个你可以自己渲染的 JSON feed 中。
有免费方案吗?
Changeloop 对一个仓库免费,包含 feed 和 widget,无需信用卡。如果一个仓库中的文件就是你所需要的一切,git-cliff 是免费且开源的。有几款托管型工具也有免费套餐;请以它们各自官网上的最新条款为准,而不是仅凭对比表(包括这一份)来判断。
延伸阅读:值得坚持的发布说明最佳实践,无论你最终选择哪种工具。