Programming Basics SQL HTML CSS JavaScript React Python C++ Java JavaFX Swing Problem Solving English English Conversations Computer Fundamentals Linux Learn Typing

Reactمشاركة المشروع

  • الملفات التي لا يجب مشاركتها في مشاريع React
  • تحديد المجلدات المراد عدم مشاركتها على GitHub

الملفات التي لا يجب مشاركتها في مشاريع React

حجم المشروع في React قد يصبح كبيراً جداً بسبب عدد المكتبات الهائلة التي يحتويها المشروع بشكل إفتراضي في المجلد node_modules بالإضافة إلى المكتبات التي يضيفها المطوّر بنفسه.

بشكل عام، جميع الملفات التي يمكن إزالتها من المشروع بدون التأثير عليه و إضافتها لاحقاً يجب عدم مشاركتها مع الغير.


1- المجلد node_modules

سواء كان المشروع تم إنشاؤه باستخدام الأمر create-react-app أو باستخدام الأمر npm create vite فإنه سيحتوي على المجلد node_modules الذي قد يحتوي على مئات المكتبات البرمجية و التي قد يتجاوز حجمها 200MB.

عند مشاركة ملفات المشروع مع الغير، يمكنك حذف المجلد node_modules منه و من ثم إعلام من سيحمّله بأنه قبل تشغيله يجب تنفيذ الأمر npm install لكي يتم إعادة إنشاء هذا المجلد في المشروع و إضافة كل المكتبات التي كانت فيه.

جميع المكتبات التي يحتاجها المشروع تكون مذكورة بداخل الملف package.json و في حال كان يعتمد على إصدارات محددة من المكتبات فإنها تكون مذكورة بداخل الملف package.lock.json.

الأداة NPM تقرأ محتوى هذين الملفين لتعرف ما هي المكتبات التي عليها تحميلها و تضمينها في المشروع عند تنفيذ الأمر npm install.


2- المجلد dist أو build

في حال قمت ببناء المشروع بواسطة الأمر npm run build فإنه في المشروع نفسه سيتم إنشاء نسخة منه بداخل مجلد إسمه build أو dist. حجم هذا المجلد قد يصل لبضعة MB على حسب حجم المشروع بالإضافة إلى المكتبات و الملفات المستخدمة فيه كالصور و ملفات الخطوط و غيرها.

بالتأكيد، من يريد تحميل المشروع لا يحتاج المجلد build أو dist فهو قادر على بنائه من جديد في أي وقت يريده لهذا يجب عدم رفعه معه.

  • في حال كان مشروعك قد تم إنشاؤه بواسطة الأمر create-react-app فإن المجلد الذي يتم فيه بناء المشروع يكون إسمه build.
  • في حال كان مشروعك قد تم إنشاؤه بواسطة الأمر npm create vite فإن المجلد الذي يتم فيه بناء المشروع يكون إسمه dist.

3- المجلد و الملفات الأخرى

في حال كان المشروع يحتوي على مجلدات أو ملفات أخرى لن يكون بحاجتها من قد يحمّل المشروع مثل ملفات السجلات ( Log Files ) فإنه يمكن حذفها منه أيضاً.

تحديد المجلدات المراد عدم مشاركتها على GitHub

معظم المطورون يقومون برفع مشاريعهم على موقع جيتهاب و ذلك لحفظ نسخة منها سواء لأنفسهم أو لمشاركة المشاريع مع الغير. لهذا السبب تجد في المشروع ملف إسمه .gitignore و الذي يمكنك من خلاله أن تحديد المجلدات و الملفات التي لا تريد حفظها عند مشاركة المشروع على جيتهاب.

حينها عندما يقوم المبرمج باستخدام الأداة Git لمشاركة مشروعه على جيتهاب فإنها بشكل تلقائي ستقوم بقراءة محتوى الملف .gitignore أولاً لمعرفة ما هي المجلدات و الملفات التي يجب أن تقوم برفعها.

إذا اطلعت على محتوى الملف .gitignore الموجود في مشروعك فإنك ستجد فيه حتماً إسم المجلد node_modules مما يعني أنه إفتراضياً تم الأخذ بالحسبان أنه لا يجب رفع هذا المجلد أثناء رفع ملفات المشروع على جيتهاب.

إذا كان مشروعك لا يحتوي على الملف .gitignore فإنه يمكنك إضافته فيه بنفسك.