تقوم باستنساخ وإنشاء نسخة من discourse-plugin-skeleton تحت اسم المستخدم أو المؤسسة الخاصة بك بناءً على الخيار الذي اخترته. بعد القيام بذلك، تقوم بتحديث جميع العناصر النائبة باسم إضافتك. مما يجعلها جاهزة لبدء التطوير.
شكراً لك! لقد فكرت في القيام بذلك في كل مرة قمت فيها بإنشاء إضافة جديدة خلال العامين الماضيين! يبدو أنك قمت بعمل أفضل بكثير مما كنت سأفعله. لا أطيق الانتظار لتجربتها!
@grubba كيف ستشعر حيال دمج هذا في النواة كمهمة rake؟ مثل
bin/rake plugin:create
يحتاج الناس إلى بيئة تطوير أساسية عاملة للعمل على الإضافات على أي حال، لذا يبدو أنها مناسبة جيدة؟ سيجعلها أيضًا “رسمية” تمامًا، وأسهل للفريق بأكمله في صيانتها.
أتساءل عما إذا كان من الأفضل جعلها 100٪ git، بدلاً من الاعتماد على الأشخاص الذين يستخدمون github (ووجود gh cli)؟ يستخدم بعض الأشخاص خدمات أخرى لاستضافة إضافاتهم، وقد لا يرغبون أيضًا في جعلها عامة على الفور.
في discourse_theme، نحافظ على ذاكرة تخزين مؤقت محلية لهيكل السمات، لذا فهي تعمل حتى في وضع عدم الاتصال!
أعتقد أن هذا منطقي! لقد اختبره الناس، وتلقيت بعض الشكاوى والملاحظات وقمت ببعض التعديلات. أعتقد أنه في حالة جيدة جدًا لجعله “رسميًا”. سأعمل خلال الأيام القليلة القادمة على إضافته إلى النواة.
أتفق على أن استخدام gh ليس مثاليًا، وسأجد حلاً. ربما ما يفعله discourse_theme new هو ما كنت أبحث عنه…
تحرير: لقد أزلت Gemfile.lock من .gitignore، كما هو مذكور. والآن يعمل.
لا يُسمح بـ Gemfile.lock في .gitignore
Cloning 'https://github.com/discourse/discourse-plugin-skeleton' to '/home/pfaffman/src/discourse-repos/discourse/plugins/discourse-public-bookmark-timers'...
Initializing git repository...
Initialized empty Git repository in /home/pfaffman/src/discourse-repos/discourse/plugins/discourse-public-bookmark-timers/.git/
The following paths are ignored by one of your .gitignore files:
Gemfile.lock
hint: Use -f if you really want to add them.
hint: Turn this message off by running
hint: "git config advice.addIgnoredFile false"
rake aborted!
Command failed with exit 1: git
/home/pfaffman/src/discourse-repos/discourse/lib/tasks/plugin.rake:352:in `system'
/home/pfaffman/src/discourse-repos/discourse/lib/tasks/plugin.rake:352:in `block (2 levels) in <main>'
/home/pfaffman/src/discourse-repos/discourse/lib/tasks/plugin.rake:344:in `chdir'
/home/pfaffman/src/discourse-repos/discourse/lib/tasks/plugin.rake:344:in `block in <main>'
Tasks: TOP => plugin:create
(See full trace by running task with --trace)
حاولت مرة أخرى بعد تشغيل git config advice.addIgnoredFile false بنفس النتيجة.
وأيضًا
$ gem exec create-discourse-theme discourse-public-bookmark-timers
ERROR: Could not find a valid gem 'create-discourse-theme' (>= 0) in any repository
ERROR: Possible alternatives: create-discourse-plugin, discourse_theme, askclass-course-theme, date_discreter, opensource-theme