هل سئمت من الدفاع عن جودة الكود مرارًا وتكرارًا؟ سوف يقوم GrumPHP بذلك نيابةً عنك! سيقوم هذا البرنامج المساعد للمؤلف بتسجيل بعض خطافات git في مستودع الحزمة الخاص بك. عندما يقوم شخص ما بإجراء تغييرات، سيقوم GrumPHP بإجراء بعض الاختبارات على التعليمات البرمجية الملتزم بها. إذا فشلت الاختبارات، فلن تتمكن من تنفيذ التغييرات. لن تعمل هذه الأداة المفيدة على تحسين قاعدة التعليمات البرمجية الخاصة بك فحسب، بل ستعلم أيضًا زملائك في العمل كيفية كتابة تعليمات برمجية أفضل باتباع أفضل الممارسات التي حددتها كفريق.
يحتوي GrumPHP على مجموعة من المهام الشائعة المضمنة. ستتمكن من استخدام GrumPHP مع الحد الأدنى من التكوين.
لا نريد أن نتعبك بكل التفاصيل، لذا بسرعة: قم بتثبيته بنفسك وأطلق العنان لقوة GrumPHP!
لكي تعمل هذه الحزمة، عليك التأكد من أن الأدوات التالية قابلة للاكتشاف في سطر الأوامر:
PHP
الملحن
بوابة
هذه الحزمة عبارة عن مكون إضافي للملحن ويجب تثبيتها على تبعية تطوير مشروعك باستخدام الملحن:
قم بتثبيت GrumPHP باعتباره phar بدون تبعيات:
يتطلب الملحن --dev phpro/grumphp-shim
تثبيت GrumPHP مع التبعيات:
composer require --dev phpro/grumphp
قم بتثبيت GrumPHP بدون تبعيات وخطافات git آلية من خلال الخلية
phive install grumphp
عندما يتم تثبيت الحزمة، سوف يقوم GrumPHP بربط نفسه بخطافات git الخاصة بمشروعك. سترى الرسالة التالية في سجلات الملحن:
احترس! GrumPHP يتعرف على التزاماتك!
لن يدفعك GrumPHP أبدًا إلى استخدام مهمة محددة. يمكنك اختيار المهام التي تناسب احتياجاتك، وتفعيل أو إلغاء تنشيط أي مهمة في وقت قصير! راجع قسم suggest
في Composer.json.
ملاحظة: سوف يقوم GrumPHP باستبدال الخطافات الموجودة ما لم تقم بتشغيل composer install
باستخدام --no-plugins
أو --no-scripts
. نقوم بإنشاء نسخة احتياطية من خطاف git الخاص بك، ولكن من الأفضل التأكد من أن لديك أيضًا نسخة احتياطية من خطافاتك المخصصة قبل محاولة تثبيت GrumPHP.
هل تواجه مشكلة في تثبيت GrumPHP؟ تعرف على كيفية:
التثبيت عالميًا
التثبيت باستخدام هيكل مشروع غريب
يمكن تكوين بعض الأشياء في GrumPHP في ملف grumphp.yml
أو grumphp.yml.dist
أو grumphp.dist.yml
في جذر مشروعك (الدليل الذي تقوم فيه بتشغيل أمر grumphp). يمكنك تحديد اسم ملف تكوين مخصص وموقع في composer.json
أو في خيار --config
لأوامر وحدة التحكم.
# grumphp.ymlgrumphp:hooks_dir: ~hooks_preset: localgit_hook_variables:VAGRANT_HOST_DIR: .VAGRANT_PROJECT_DIR: /var/wwwEXEC_GRUMPHP_COMMAND: execENV: {}stop_on_failure: falseignore_unstaged_changes: falsehide_circumvention_tip: falseprocess_timeout: 60ascii:فشل: grumphp-grumpy.txtsucceeded: grumphp-happy.txtparallel:enabled: truemax_workers: 32fixer:enabled: truefix_by_default: falseenvironment:files: []variables: {}paths: []tasks: {}testsuites: []extensions: []
يتم تقسيم تفاصيل التكوين إلى الأقسام التالية.
المعلمات – إعدادات التكوين لـ GrumPHP نفسه.
المهام – المهام الخارجية التي تقوم بالتحقق من صحة التعليمات البرمجية والتكوينات الخاصة بها.
TestSuites
ملحقات
توسيع TaskRunner
مدقق الاتفاقيات
نظرًا لأن GrumPHP مجرد أداة CLI، فيمكن تشغيل هذه الأوامر:
تكوين
بوابة: الحرف الأول
بوابة:دينيت
جيت: الالتزام المسبق
بوابة: الالتزام رسالة
يجري
يعمل GrumPHP مع PHP 5.6 أو أعلى.
تم اختبار هذه الحزمة مع عملاء git التاليين:
سطر الأوامر يونيكس
كلي ماك
سطر الأوامر ويندوز
PHPStorm جيت
شجرة المصدر الأطلسية
سينتيفو سمارت جيت
تتوفر بالفعل الكثير من المهام للتأكد من أن فريقك يكتب تعليمات برمجية رائعة. نحن نتطلع دائمًا إلى دعم المهام الجديدة. لا تتردد في تسجيل مشكلة أو إنشاء طلب سحب لمهمة نسيناها.
هل تفتقد إحدى الميزات أم أنك وجدت خطأً؟ تسجيله في تعقب القضية! تريد المساعدة؟ لا تتردد في الاتصال بنا!
التعليمات
يتم تتبع الأخطاء وطلب الميزات على GitHub. يرجى إلقاء نظرة على قواعدنا قبل المساهمة بالكود الخاص بك.
GrumPHP مرخص بموجب ترخيص MIT.