مستودعك الأول: init، add، commit
في الدروس الثلاثة الأولى بنينا الصورة في أذهاننا: لماذا يوجد التحكم في الإصدارات، وكيف يفكّر Git في مشروعك. الآن نلمس الأداة لأول مرة وننشئ حفظًا حقيقيًا. أكثر ما يربك الناس في البداية هو أن Git لا 'يحفظ' الملفات مباشرةً — هناك محطة وسيطة واحدة. كل تغيير يمرّ عبر ثلاثة أماكن: شجرة العمل (working tre
تخيّل منطقة التحضير مثل تعبئة صندوق قبل أن تغلقه وترسله: git add يختار ما يدخل الصندوق، وgit commit يغلقه ويثبّته في التاريخ إلى الأبد.
- شجرة العمل (working tree)
- المجلد الذي تعيش فيه ملفاتك وتحرّرها. التغيير هنا لا يُحفَظ بعد في Git حتى تضيفه وتنفّذ commit.
- منطقة التحضير (staging)
- محطة وسيطة تحزم فيها بالضبط أي التغييرات ستدخل الحفظ التالي. git add يضع تغييرًا هنا، مثل وضع عنصر في الصندوق.
- git init
- يبدأ تتبّع الإصدارات في المجلد الحالي. ينشئ مجلدًا فرعيًا مخفيًا اسمه .git سيحتوي على كل التاريخ.
- git add
- ينقل التغييرات من شجرة العمل إلى منطقة التحضير — أي يختار ما يدخل الحفظ التالي.
- git commit
- يغلق ما هو موجود في منطقة التحضير في حفظ دائم (commit) داخل التاريخ، مع رسالة قصيرة تشرح التغيير.