Возможно, это глупый вопрос, но я не нашёл ответа: какая ветка должна быть по умолчанию для безопасных обновлений? Я не хочу сломать свой продакшн-сервер из-за случайных сбоев, вызванных проблемами в ветке main. Мне просто стоит следовать за последним тегом? То есть v3.2.0 на данный момент?
Привет и добро пожаловать, @CGenie ![]()
Думаю, большинство людей используют ветку по умолчанию tests-passed, хотя некоторые используют beta или stable. Подробнее о различиях можно узнать здесь: Configure a supported tracking branch to get Discourse software updates
также объясняет различия: Understanding Discourse release channels
На мой взгляд, ответ — stable, так как эта версия получает незначительные исправления ошибок и обновления безопасности без существенных изменений в коде, что обычно обеспечивает лучшую совместимость при обновлении через каждый патч.
Недостатком является то, что переход к следующему минорному выпуску, например 3.3.0 (в будущем), может потребовать более значительных изменений, с которыми придётся справиться «одним махом», а не постепенно. Это особенно может повлиять на кастомизации, например, уникальные плагины, разработанные с учётом предыдущей минорной версии, но не протестированные на новой серии бета-выпусков 3.3.x.
В целом я рекомендую выбрать stable, если вас не беспокоит отсутствие самых последних функций.
Хотя я думаю, что даже на tests-passed вы контролируете свои собственные обновления и можете отложить их до тех пор, пока у вас не появится время проверить новые функции (возможно, на тестовом сайте, если это необходимо).
Хорошо, ещё один глупый вопрос: я использую discourse_docker для развёртывания сервера. Похоже, что Discourse настроен на ветку main. Как мне изменить это на tests-passed?
Ах, понятно, version в containers/app.yml по умолчанию установлен в tests-passed. Значит, это разумный баланс между стабильностью и новыми функциями?
Согласен. Это основано на многолетнем опыте работы с крупным форумом, размещённым на собственном хостинге. Хотя ветки beta или прошедшие тестирование получают исправления и новые функции быстрее, ветка stable предсказуема.
Вы знаете, когда происходят серьёзные изменения (обновления версий), и что между версиями изменения незначительны. Это позволяет планировать свои ресурсы, подготовиться к необходимому объёму тестирования и потенциальным сбоям в работе ваших кастомизаций (кастомные темы и т. д.).