سجل التعديلات
الفرق مقارنةً بالنسخة السابقة
+ **Git** نظام موزع للتحكم بالإصدارات: يحفظ تاريخ كل تغيير في المشروع، ويتيح العمل على فروع متوازية ثم دمجها.+ ## المناطق الثلاث++ 1. **مجلد العمل**: الملفات كما تعدّلها.+ 2. **منطقة التجهيز** (staging): ما اخترته للإيداع التالي.+ 3. **المستودع**: الإيداعات المحفوظة.++ ```bash+ git status # ما الذي تغيّر؟+ git add src/app.js # جهّز ملفاً+ git commit -m "إصلاح حساب المجموع في السلة"+ git log --oneline -5 # آخر 5 إيداعات+ ```++ ## الفروع++ ```bash+ git switch -c feature/search # أنشئ فرعاً وانتقل إليه+ # ... تعديلات وإيداعات ...+ git switch main+ git merge feature/search+ ```++ ## المستودعات البعيدة++ ```bash+ git clone https://github.com/user/repo.git+ git pull # اجلب التغييرات وادمجها+ git push -u origin feature/search+ ```++ ## التراجع بأمان++ | الحالة | الأمر |+ |---|---|+ | إلغاء تعديلات ملف لم يُجهَّز | `git restore file.js` |+ | إخراج ملف من التجهيز | `git restore --staged file.js` |+ | التراجع عن إيداع منشور | `git revert <commit>` (ينشئ إيداعاً عكسياً) |++ `git revert` آمن للفروع المشتركة لأنه لا يعيد كتابة التاريخ، بخلاف `git reset --hard` و`git push --force` اللذين قد يحذفان عمل غيرك.++ ## رسائل إيداع جيدة++ سطر أول قصير يصف **ما** تغيّر، ثم عند الحاجة فقرة تشرح **لماذا**.++ ## أخطاء شائعة++ - إيداع أسرار (كلمات مرور، مفاتيح API) أو ملف `.env`؛ أضفها إلى `.gitignore`. وإذا أُودع سر فاعتبره مكشوفاً وغيّره، فحذفه من آخر إيداع لا يمحوه من التاريخ.+ - إيداعات ضخمة تخلط تغييرات غير مترابطة.
مقال مرجعي رسمي من فريق عرب كود
ملاحظة المراجعة: Approved for publication: site owner written instruction 2026-10-24 (final completion directive: populate the wiki via the official editorial identity)