github/gitignore · Laravel.gitignore
شرح قالب .gitignore لـ Laravel
يشرح سبب تجاهل Laravel.gitignore لـ vendor وnode_modules و.env والرابط الرمزي public/storage وبناء Vite ومفاتيح Passport وauth.json.
Laravel.gitignore مخصص لتطبيقات Laravel التي تثبّت الاعتماديات عبر Composer وnpm. يضم قواعد مشابهة لملف .gitignore المضمَّن افتراضيًا في مشاريع Laravel، مضافًا إليها ملفات بيئات التطوير مثل Homestead وVagrant.
أهم ما فيه .env. يقرأ Laravel كلمة مرور قاعدة البيانات وAPP_KEY ومفاتيح API للبريد والدفع كلها من .env، فإن أُودع هذا الملف انكشفت كل أسرار التطبيق.
شرح القواعد
| النمط | ما الذي يتجاهله ولماذا |
|---|---|
/vendor/node_modules/ | الاعتمادياتمجلدات يُعاد إنشاؤها عبر composer install وnpm install. أودِع composer.lock وpackage-lock.json ليُثبَّت الإصدار نفسه. |
.env.env.backup.env.production | ملفات البيئةأسرار التطبيق والإعدادات الخاصة بكل بيئة. تُشارَك قائمة المتغيرات عبر .env.example، ولا يتجاهل هذا القالب ذلك الملف. |
public/storagepublic_html/storagestorage/*.key | رابط التخزين والمفاتيحالرابط الرمزي الذي ينشئه php artisan storage:link، والمفتاح الخاص لـ OAuth في Passport (oauth-private.key). يُعاد إنشاء الرابط على كل خادم، والمفتاح سري. |
/public/buildpublic/hotpublic_html/hotnpm-debug.logyarn-error.log | بناء الواجهة الأماميةنتائج بناء Vite، وملف hot الذي يشير إلى أن خادم التطوير يعمل. إن أُودع ملف hot حاول خادم الإنتاج تحميل الأصول من خادم تطوير غير موجود. |
.phpunit.result.cache/.phpunit.cache | ذاكرة الاختباراتذاكرة يتذكر فيها PHPUnit أمورًا مثل ترتيب الاختبارات الفاشلة. |
Homestead.yamlHomestead.json/.vagrant.phpactor.json/storage/pail | بيئة التطوير والأدواتإعدادات Homestead الشخصية، وحالة Vagrant، وإعدادات Phpactor، وملفات سجل Laravel Pail. |
auth.json | مصادقة Composerملف مصادقة Composer الذي تُحفظ فيه الرموز وكلمات المرور لمستودعات الحزم الخاصة. |
bootstrap/compiled.phpapp/storage/ | مسارات قديمةالملف المترجم ومسار التخزين من أيام Laravel 4. لا تنشأ في الإصدارات الحديثة. |
ملاحظات عملية
- ضع في
.env.exampleقيمًا نائبة بدل القيم الحقيقية ثم أودِعه. - في مجلدات
appوframeworkوlogsتحتstorage/ملفات .gitignore فرعية يضعها Laravel افتراضيًا، فلا تحذفها. - إن بقي
.envفي السجل التاريخي فغيّرAPP_KEYعبرphp artisan key:generateواستبدل كلمات مرور قاعدة البيانات وAPI أيضًا.
القالب الأصلي
Laravel.gitignore
/vendor/node_modules/npm-debug.logyarn-error.log# Laravel 4 specificbootstrap/compiled.phpapp/storage/# Laravel 5 & Lumen specificpublic/storagepublic/hot# Laravel 5 & Lumen specific with changed public pathpublic_html/storagepublic_html/hotstorage/*.key.envHomestead.yamlHomestead.json/.vagrant.phpunit.result.cache/.phpunit.cache/public/build/storage/pail.env.backup.env.production.phpactor.jsonauth.json
مصدر القوالب: github/gitignore/Laravel.gitignore @356fd7b (2026-09-11) · CC0-1.0