ربما يكون هذا سؤالاً سخيفًا، لكنني لم أجد إجابة: ما هو الفرع الافتراضي للتحديثات الآمنة؟ لا أريد كسر خادم الإنتاج الخاص بي بسبب بعض الأعطال العشوائية الناتجة عن مشكلات في الفرع main؟ هل يجب أن أتبع أحدث علامة (tag) فقط؟ أي 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. لذا أعتقد أن هذا تكوين معقول بين الاستقرار والميزات الجديدة؟
صحيح. وهذا يعتمد على عدة سنوات من الخبرة في تشغيل منتدى كبير نسبيًا بنفسك. بينما تتلقى الإصدارات التجريبية أو التي تم اجتياز اختبارها إصلاحات وميزات جديدة بشكل أسرع، فإن الفرع المستقر يمكن التنبؤ به.
أنت تعرف متى تحدث التغييرات الكبيرة (ترقيات الإصدار) وأنه بين الإصدارات تكون التغييرات طفيفة. بهذه الطريقة يمكنك تخطيط مواردك الخاصة، والاستعداد لبعض جهود الاختبار الضرورية، واحتمالية تعطل التخصيصات الخاصة بك (السمات المخصصة وما إلى ذلك).