البرنامج التعليمي السابق: 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 master
أخيراً، قم بإنشاء ملف plugin.rb للمكون الإضافي الخاص بك كما هو موضح في الجزء الأول. لهذا المثال، قمت للتو بإنشاء ملف وهمي:
plugin.rb
# name: discourse-plugin-test
# about: Shows how to set up Git
# version: 0.0.1
# authors: Robin Ward
إنشاء رابط رمزي (symlink)
لأنك اتبعت دليل المطور الخاص بنا، يجب أن يكون لديك نسخة من 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.



