哪个分支最好/最安全,不影响生产环境?

这可能是一个愚蠢的问题,但我还没有找到答案:安全更新的默认分支应该是哪个?我不想因为 main 分支出现一些随机故障而破坏我的生产服务器?我应该只遵循最新的标签吗?即目前是 v3.2.0

1 个赞

你好,欢迎你 @CGenie :slight_smile:

我认为大多数人会使用默认的 tests-passed 分支,但也有一些人会使用 betastable。关于它们之间的区别,可以在 Configure a supported tracking branch to get Discourse software updates 获取更多信息。

6 个赞

Understanding Discourse release channels 也解释了区别。

5 个赞

依我之见,答案是 stable,因为它会收到次要的错误修复和安全补丁,而不会显著更改大部分代码,通常在升级每个补丁时会带来更好的兼容性。

缺点是,将次要版本升级到(例如)3.3.0(未来)可能涉及更多重大的更改,您需要一次性处理,而不是分批处理。这尤其会影响自定义,例如为先前次要版本构建但未在新 3.3.x 系列 beta 版本上进行测试的定制插件。

总而言之,如果您不介意错过最新的功能,我建议选择 stable

3 个赞

但我认为即使在 tests-passed 上,您也可以控制自己的更新,并可以推迟到您有时间查看任何新功能(如果需要,可以在暂存站点上进行)。

3 个赞

好的,又有一个愚蠢的问题:我使用 discourse_docker 来部署服务器。看起来 discourse 是用 main 分支设置的。我该如何将其更改为 tests-passed

啊,好的,containers/app.yml 中的 version 默认设置为 tests-passed。所以我想这是一个在稳定性和新功能之间保持平衡的合理配置?

2 个赞

说得对。这是基于我多年自行托管大型论坛的经验。虽然 beta 或 test-passed 版本能更快地获得修复和新功能,但 stable 分支是可预测的。

你知道何时会发生重大变更(版本升级),并且在版本之间进行的变更都是小幅度的。这样你就可以规划自己的资源,为一些必要的测试工作以及可能破坏你自定义内容(自定义主题等)的情况做好准备。

1 个赞