الدليل السابق: 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 لإضافتك كما هو موضح في الجزء 1. في هذا المثال، أنشأت ملفًا وهميًا فقط:
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: فتحات الإضافة (Plugin Outlets)
الجزء 3: إعدادات الموقع
الجزء 4: هذا الموضوع
الجزء 5: واجهات الإدارة
الجزء 6: اختبارات القبول
الجزء 7: نشر إضافتك
هذا المستند خاضع للتحكم في الإصدارات - اقترح التغييرات على github.



