ورقة وقلم وهنتكلم عن الـ Git Commit Message Cheatsheet
بعد كل تغيير بتحب تسجله علي ال Version Control اللي عليه المشروع الخاص بيك بتحتاج تكتب رسالة , الرسالة دي بتوضح ايه التغيير اللي أنت عملته في الكود اللي أنت حاليا بترفعه علي Version Controlو كتير مننا بيتجاهل إنه يكتب الرسالة بشكل واضح يسهل عليه وعلي اللي بعده إنه يفهم من عنوان الرساله إيه اللي اتغير في الكود.
خلينا نقولك بسرعة على كلمات تقدر تبتدي بيها رسالتك، علشان تسهل عليك وتفهم اللي بعدك إيه اللي اتغير:
1- Feat:
بمعني”ميزة”، هي اختصار لكلمة “Feature”. من اسمها، استخدمها إذا كنت قد قمت بإضافة ميزة جديدة للمشروع.
git commit -m 'feat: Add user profile picture upload functionality'
2- Fix
بمعني”إصلاح”. ابدأ رسالتك بها إذا كانت التغييرات التي قمت بها تحل مشكلة في الكود.
git commit -m 'fix: Resolve issue with login button not responding'
3- Chore
ومعناها عمل روتيني , و دي ابدأ بيها إذا كانت التغييرات غير أساسية، مثل التحديثات الروتينية.
git commit -m 'chore: Update project dependencies'
4- Refactor
استخدمها إذا كنت قد قمت بتحسين الكود بدون إضافة ميزة جديدة أو حل مشكلة.
git commit -m 'refactor: Improve code readability in authentication module'
5- Docs
استخدمها إذا قمت بتحديث وثائق المشروع، مثل تعديل ملف readme.
git commit -m 'docs: Update README with installation instructions'
6- Style
إذا كانت التغييرات تؤثر على مظهر الكود، مثل تنسيقه (Formatting)
git commit -m 'style: Format code according to coding guidelines'
7- Test
إذا كانت التغييرات تتعلق باختبار وتجربة المشروع سواءً باضافة أو تعديل اي Test لمشروعك
git commit -m 'test: Add unit tests for user authentication'
8- Perf
اختصار لكلمة “performance” استخدمها إذا كانت التغييرات بتحسن من أداء الكود.
git commit -m 'perf: Optimize database queries for faster user retrieval'
9- Build
التغييرات تؤثر على “Build System” الخاص بمشروعك.
git commit -m 'build: Update build process to include new dependencies'
10- Revert
استخدمها لو تغييرك هو مجرد رجوع إلى نسخة سابقة من الكود.
git commit -m 'revert: Revert previous commit that caused issues'
11- CI
إذا كانت التغييرات تتعلق “Continues Integration” الخاص بمشروعك.
git commit -m 'ci: Integrate automated testing into continuous integration pipeline'