البرنامج التعليمي السابق: Developing Discourse Plugins - Part 3 - Add custom site settings
الآن بعد أن أصبح المكون الإضافي (plugin) الخاص بك أكثر تطوراً، فقد حان الوقت لتكون أكثر تطوراً في كيفية تطويره.
نقترح عليك استخدام git للتحكم في الإصدارات للمكون الإضافي الخاص بك. نوصي أيضاً باستخدام github لمشاركة كود المكون الإضافي الخاص بك مع الآخرين.
إنشاء مستودع Git الخاص بك
بمجرد إنشاء حسابك على Github، قم بزيارة هذا الرابط لإنشاء مستودع جديد. يمكنك تسميته ما تشاء، ولكن بشكل عام، من الجيد أن يبدأ الاسم بـ discourse-. تأكد من أن المستودع عام. إليك كيف بدت شاشتي:
إنشاء مجلد العمل المحلي الخاص بك
في هذه المرحلة، أقوم بإنشاء دليل محلي على جهاز الكمبيوتر الخاص بي للاحتفاظ بالمكون الإضافي. عادةً ما أضع المجلد الخاص بي في ~/code ولكن يمكنك وضعه في أي مكان تريده على جهاز الكمبيوتر الخاص بك:
mkdir -p ~/code/discourse-plugin-test
cd ~/code/discourse-plugin-test
الآن دعنا نتبع التعليمات من github لتهيئة المستودع باستخدام ملف README:
echo "# discourse-plugin-test" >> README.md
git init
git add README.md
git commit -m "first commit"
git remote add origin git@github.com:eviltrout/discourse-plugin-test.git
git push -u origin main
أخيراً، قم بإنشاء ملف plugin.rb للمكون الإضافي الخاص بك كما هو موضح في الجزء الأول. لهذا المثال، قمت للتو بإنشاء ملف وهمي:
plugin.rb
# name: discourse-plugin-test
# about: Shows how to set up Git
# version: 0.0.1
# authors: Robin Ward
إنشاء رابط رمزي (symlink)
نظراً لأنك اتبعت دليل المطور developer guide الخاص بنا، يجب أن يكون لديك نسخة من Discourse مستخرجة على جهاز الكمبيوتر الخاص بك في مكان ما. لقد استخرجتها في ~/code/discourse ولكن مرة أخرى، كان بإمكانك وضعها في أي مكان ويجب أن يعمل هذا على أي حال إذا قمت بتعديل الكود التالي وفقًا لذلك:
cd ~/code/discourse/plugins
ln -s ~/code/discourse-plugin-test .
أنشأ الكود أعلاه رابطًا رمزيًا بين كود Discourse الخاص بك ومجلد المكون الإضافي. أعد تشغيل خادم التطوير الخاص بك ويجب أن تجد أن المكون الإضافي الخاص بك يعمل!
جمال هذا الإعداد هو أنه يمكنك فقط إيداع المكون الإضافي الخاص بك في github وعدم القلق بشأن قاعدة كود Discourse التي يعيش بداخلها. سيتم عزل التغييرات الخاصة بك في المكون الإضافي نفسه. إذا كنت بحاجة إلى تعديل كود Discourse، فلا يزال بإمكانك القيام بذلك، ولكن سيتتبع git التغييرات بشكل منفصل!
أوصي باستخدام نافذة محرر واحدة لقاعدة كود المكون الإضافي الخاص بك ونافذة واحدة لـ Discourse نفسه. من الأسهل عندما تفكر فيهما كشيئين مختلفين.
المزيد في السلسلة
الجزء 1: أساسيات المكونات الإضافية
الجزء 2: منافذ المكون الإضافي
الجزء 3: إعدادات الموقع
الجزء 4: هذا الموضوع
الجزء 5: واجهات المسؤول
الجزء 6: اختبارات القبول
الجزء 7: انشر المكون الإضافي الخاص بك
يتم التحكم في إصدار هذه الوثيقة - اقترح تغييرات على github.



