لطالما كانت أفضل الممارسات هي تجنب تعديل السمات المثبتة من مستودع Git عن بُعد محليًا على Discourse. فأي تغييرات تُجرى على كود السمة أو الملفات المرفوعة تُحذف عند تحديث السمة من المستودع البعيد.
في هذا الالتزام (commit)، قمنا بإزالة إمكانية تعديل سمة عن بُعد محليًا، وأصبحنا نطبق أفضل الممارسات هذه في Discourse.
ماذا يحدث إذا كانت لدي سمة عن بُعد مع تغييرات محلية؟
لا يحدث شيء حتى الآن. تظل سمة كما هي حتى تقوم بإزالتها أو تحديثها من المصدر البعيد.
كيف أحافظ على تعديلاتي المحلية؟
إذا كانت تغييراتك تقتصر على CSS فقط:
يمكنك نسخ التغييرات الخاصة بـ CSS فقط إلى مكون سمة محلي جديد تمامًا. للقيام بذلك:
- انقر على تثبيت
- انقر على إنشاء جديد
- انقر على زر تحرير في اللوحة اليمنى.
- انسخ تغييرات CSS إلى الملف المناسب (common/mobile/desktop).
- احفظ وقم بتفعيل مكون السمة.
- قم بتحديث السمة البعيدة لاستبدال التغييرات المحلية وتجنب تكرار CSS.
إذا قمت بتغيير أكثر من CSS (JS/القوالب):
نوصي، إذا كنت ترغب في الاحتفاظ بتعديلاتك المحلية، بتحويل السمة إلى سمة محلية. للقيام بذلك:
- افتح السمة من خلال Admin > Customize
- انقر على تصدير لتحميل السمة مع تغييراتك المحلية.
- انقر على تثبيت أسفل قائمة السمات، ثم اختر
من جهازك - قم بتحميل السمة المصدرة، وثبتها، وقم بتفعيلها كما كان من قبل.
الخيار الآخر للمهتمين هو عمل نسخة (fork) من السمة البعيدة على GitHub، ثم الالتزام بتغييراتك في المستودع المنسوخ، وتثبيت هذه النسخة على مثيل Discourse الخاص بك. وهذا يتيح إمكانية إعادة دمج (rebase) تغييراتك فوق أي تحديثات مستقبلية للمستودع الرئيسي، وهو ما لا يوفره تحويل السمة إلى سمة محلية.
أخيرًا، تأكد من إزالة السمة البعيدة لتجنب تكرار التغييرات والارتباك في المستقبل.

