- 4 min read
هل تعرف Git حقًا؟ — ورقة الأجوبة الخاصة بالإختبار.
الجواب: خطأ
الشرح : Git هو نظام للتحكم في الإصدارات، بينما GitHub هو منصة تستضيف مستودعات Git.
الجواب: git commit --amend
الشرح : يتيح لك الأمر 'git commit --amend' تعديل أحدث commit، بما في ذلك تغيير رسالة الـ commit.
الجواب: اختيار أجزاء معينة من التغييرات لإضافتها إلى مرحلة الإعداد (stage)
الشرح : يتيح لك الأمر git add -p مراجعة التغييرات تفاعليًا واختيار الأجزاء المحددة (hunks) لإضافتها إلى commit التالي.
الجواب: يفصل HEAD ويعيده ثلاث commits إلى الخلف
الشرح : HEAD^^^ تعادل HEAD~3، وتشير إلى commit الذي يسبق HEAD بثلاث خطوات. يقوم الأمر بفصل HEAD والإشارة إلى ذلك commit.
الجواب: .gitkeep
الشرح : ملف .gitkeep ليس ملفًا رسميًا في Git، بل هو اصطلاح يستخدمه المطورون للاحتفاظ بالمجلدات الفارغة، لأن Git لا يتتبع المجلدات الفارغة.
الجواب: يتجاهل الملفات ذات الامتداد .swo و .swp
الشرح : النمط *.sw[op] يستخدم مجموعة الأحرف [op] لمطابقة 'o' أو 'p'، لذا فإنه يتجاهل الملفات التي تنتهي بـ .swo و .swp.
الجواب: ينتقل إلى الفرع السابق
الشرح : الأمر git switch - هو اختصار للعودة إلى الفرع السابق الذي كنت عليه، مثل cd - في نظام Linux.
الجواب: git stash أو git switch -c <new-branch>
الشرح : يمكنك استخدام 'git stash' لحفظ التغييرات مؤقتًا حتى تتمكن من التبديل بين الفروع دون فقدان عملك. أو يمكنك إنشاء فرع جديد يحتوي على تغييراتك غير المحفوظة باستخدام 'git switch -c <new-branch>'.
الجواب: pop يزيل الـ stash بعد تطبيقه، بينما apply يبقيه
الشرح : الأمر pop يطبق الـ stash ثم يزيله من قائمة الـ stash، بينما الأمر apply يطبقه لكنه يبقيه متاحًا للاستخدام لاحقًا.
الجواب: نعم، ولكن يجب استخدام الخيار --force
الشرح : بشكل افتراضي، يمنع Git وجود عدة مجلدات عمل تشير إلى نفس الفرع لتجنب التعارض. ومع ذلك، يمكنك تجاوز هذا السلوك باستخدام الخيار --force مع الأمر git worktree add، مما يسمح لعدة مجلدات عمل بالإشارة إلى نفس الفرع.
الجواب: عندما يكون الفرع المستهدف سَلَفًا للفرع المصدري
الشرح : يحدث الدمج السريع عندما يكون الفرع الذي يتم الدمج فيه هو بالفعل سَلَف للفرع الآخر. في هذه الحالة، يقوم Git فقط بتحريك المؤشر للأمام دون إنشاء عملية دمج جديدة (merge commit).