التمرين 1 - إعداد بيئة git الأساسية
استنساخ بوابة https://github.com/lsnp/slideshow\_.git
1. إعداد مشروع "عرض الشرائح":
أ) استنساخه من الرابط الذي قدمه المدرب
(استنساخ بوابة)
- قم بإزالة المجلد ".git" من "عرض الشرائح\_"
(عرض شرائح القرص المضغوط\_; rm -rf .git)
ب) تهيئة المشروع في "عرض الشرائح\_"
(جيت init، ls -la، git add، git Commit)
ج) قم بإنشاء مجلد لجميع مشاريع git الخاصة بك
 وقم بإنشاء مشروع مكشوف يسمى "slideshow.git"
(~/repos, cd ~/repos, git clone --bare)
د) قم بإنشاء أول نسخة عمل من 'slideshow.git'، وقم بتسميتها
"مرحاض 1"
(استنساخ بوابة)
هـ) التحقق من الحالة في كل من اتفاقيات إعادة الشراء، "wc1" و"lideshow.git"،
وتحليل الرسائل - ماذا يمكنك أن تقول؟
(حالة بوابة، ليرة سورية)
التمرين 2 - المزيد من نسخ العمل التمرين 3 - الروتين اليومي
2. قم بإنشاء نسخة عمل أخرى "wc2" من الريبو العاري
 3. في "WC1":
أ) قم بإجراء بعض الترتيب مع المجلدات
- نقل جميع الصور إلى مجلد جديد (صورة)
(استخدم "mv" وتحقق من الريبو باستخدام "الحالة" و
"فرق")
- نقل كافة ملفات جافا سكريبت إلى مجلد جديد (js)
(استخدم "git mv" وتحقق من الريبو)
ب) تحليل الموقف - ما الذي يمكنك ملاحظته؟ (-:
ج) إضافة إلى التغييرات في ذاكرة التخزين المؤقت من أ)
(جيت إضافة)
د) التحقق من الريبو
ه) إنشاء المراجعة
(جيت الالتزام)
و) التحقق من الريبو
ز) إرسال التغييرات إلى الريبو عن بعد
(دفعة جيت)
ح) التحقق من الريبو
ط) أضف ملفًا جديدًا "logo5.html"، وانسخ الملف "logo.html" إليه
هو - هي
فعلت في التمرين الأول
 (استنساخ بوابة)
 
 وتغيير نوع دوران الصورة
 (في الصف الأول يجب أن يكون الكل "يسار")
 ي) التحقق من الريبو (WC1)، والحالة، والفرق
 ك) إرسال التغييرات إلى الريبو عن بعد
 ل) التحقق من الريبو مرة أخرى
 التمرين 4 - المزامنة مع الآخرين التمرين 5 - مجلد فارغ، تفاصيل الروتين اليومي
4. تفعيل "wc2" وتحليل الرسائل
 (سحب بوابة، حالة بوابة)
 5. في "مرحاض 2":
 أ) إنشاء كتالوج فارغ جديد "html"
 - التحقق من الحالة - ماذا حدث؟
 - إرسال التغييرات إلى المستودع البعيد (كيف؟)
 - تحقق من حالة
 ب) في مجلد "html" ضع جميع الملفات ذات الامتداد
 '.لغة البرمجة'
 - التحقق من الحالة، ولكن لا تلتزم بعد
 ج) أنشئ ملفًا جديدًا "logo\_jq2.js"، وانسخ "logo\_jq1.js"
 وتغيير المعلمات (التأخير والسرعة والمهلة) ل
 دوران
 من النوع "شريحة Y"
 - التحقق من الريبو وتحليل الرسائل
 - إرسال التغييرات إلى المستودع البعيد
 - التحقق من الريبو مرة أخرى
 د) اختبر مشروعك - ما هي الاستنتاجات؟
 التمرين 6 - المزيد من الروتين اليومي
التمرين 7 - آلة الزمن، المرحلة
6. في "مرحاض 1"
 أ) قم بقص كود "css" من "logo.html"، وضعه في ملف جديد
 "logo.css" وربطه:
 - التحقق من الريبو وتحليل الرسائل
 - إرسال التغييرات إلى الريبو البعيد
 ب) تفعيل "WC1" وتحليل الرسائل
 ج) إرسال التغييرات إلى الريبو عن بعد
 7. في "مرحاض 2":
 أ) قم بإزالة "logo5.html"، واستخدم "rm" فقط
- التحقق من الريبو وتحليل الرسائل
 - العودة (بوابة الخروج)
 ب) قم بإزالة "logo5.html" مرة أخرى، ولكن استخدمه هذه المرة
 "جيت آر إم"
 - التحقق من الريبو وتحليل الرسائل
 - العودة (إعادة تعيين بوابة، الخروج بوابة)
 
 ج) أخيرًا قم بإزالة "logo5.html" وأرسل التغييرات إلى جهاز التحكم عن بعد
 الريبو
 د) تفعيل دورة المياه وتحليل الرسائل
 ه) تغيير إطار الجدول، في ملف "logo.css" إضافة الصلبة
 مستطيل
 - التحقق من الريبو
 - إرسال التغييرات إلى الريبو البعيد
 - التحقق من الريبو مرة أخرى
 التمرين 8 - هل أنا حازم؟
(تأكد من أن جميع المراحيض نظيفة)
 8. قدم هذه التغييرات:
 أ) في "WC1":
 - تفعيل الريبو
 - تغيير إطار الجدول إلى منقط في "logo.css"
 - تحقق من حالة
 - إرسال التغييرات إلى الريبو البعيد
 - تحقق من حالة
 ب) في "WC2":
 - لا تقم بتفعيل الريبو (-:
 - تحقق من حالة
 - تغيير إطار الجدول إلى متقطع في "logo.css"
 - إرسال التغييرات إلى الريبو البعيد
 - تحقق من حالة
 - ماذا نستطيع ان نفعل الآن؟ (--:
 التمرين 9 - القاضي دريد..
التمرين 10 - المرآة، المرآة من الأجمل؟
التمرين 11 - العودة، الإخفاء
9. اكتشف من ومتى قام بإنشاء "logo.css"؟
 (تعليق توضيحي على بوابة، إلقاء اللوم على بوابة، سجل بوابة)
 10. تحقق من الاختلافات بين إصدارات
 "logo.css" (git diff، git show)
 أ) لمراجعة واحدة
 ب) بين مراجعتين قبل إنشاء هذا الملف
 ج) بين تنقيحين بعد ظهوره
 د) قم بتغيير ترتيب أسماء المراجعة في ج) وقم بعمل فرق مرة أخرى
 - هل لديك أي استنتاجات؟
 11. طريقة آمنة لإبقاء تغييراتك المؤقتة خارج نطاق
 منظر':
 أ) في "WC1":
 - إظهار الصور بحجمها الافتراضي، قاعدة تعليق CSS
 في "logo.css" ( /\* ... \*/ );
 - نقل التغييرات إلى الريبو البعيد
 
 ب) في "WC2":
 - لا تفعل ذلك!
 - تغيير عرض الصور إلى "190 بكسل"
 - لا تقم بإجراء تغييرات بعد
 - الآن تحقيق ذلك
 - إخفاء التغييرات الخاصة بك مؤقتا
 (جيت خبأ)
 - التحقق من الحالة (ماذا يقول لك git؟)
 - تحقيق ذلك مرة أخرى
 - إعادة تطبيق التغييرات المؤقتة
 (جيت خبأ)
 - ماذا يمكنك/يجب عليك فعله الآن؟ (مناقشة)
 - اختبر طرق "العودة" هذه:
 - git checkout، git checkout master
 -- بوابة الخروج , القط , احصل على
 تغييرات مؤقتة من خبأ
 - إعادة تعيين git HEAD، git checkout -، الحصول على آخر تغيير من المخبأ
 - جيت العودة الرأس
 - جيت العودة الرأس
 - إرسال التغييرات إلى الريبو البعيد (حل الصراع)
 تمرين 12 - تاريخ ممل..
12. تعرف على ما تغير في الملف "logo\_jq1.js" (git
 سجل)
 أ) بشكل عام
 ب) بين مراجعتين (على سبيل المثال 4 و 7)
 ج) بين الأمس واليوم
 د) في نسخة قصيرة مع:
 - 7 أحرف أولى من SHA1
 - خط واحد
 - تعليق قصير للمراجعة
 12.1. تحقق بطريقة سريعة من عدد الالتزامات التي قمت بها
 المستخدم في 'wc1'
 (المختصر)
 التمرين 13 - مذكرات ديزي
التمرين 14 - أبشع الفتيات في الفيسبوك
13. انظر إلى التغييرات التي طرأت على "logo.css" من reflog (git
 إعادة التسجيل)
 أ) بشكل عام
 ب) للفرع الخرساني
 ج) تنظيف كافة عمليات إعادة التسجيل
 
 (تنظيف "مرحاض 1" و"مرحاض 2")
 14. الصراع الثنائي:
 أ) في "WC2":
 - فتح gitk (gitk --all &)
 - تغيير ملف .png وتجهيزه
 - التحقق من الفرق بين المرحلة والرأس
 - إرسال التغييرات إلى الريبو البعيد
 ب) في "wc1" (اذهب إلى هناك في محطة أخرى):
 - لا تفعل ذلك!
 - افتح gitk آخر (gitk --all &)
 - تغيير ملف .png
 - إرسال التغييرات إلى الريبو البعيد
 (git checkout --theirs، git add --all، git Commit)
 التمرين 15 - النشر البطيء
15. إنشاء نسخة جديدة من المشروع بأكمله (أرشيف git)
التمرين 16 - فرخ مقطوع الرأس التمرين 17 - قرود الشجرة
 16. استخدم آلة الزمن وارجع إلى "logo.html" في
 المراجعة 4.
 التحقق من الحالة والعودة إلى المستقبل (-:
 (قم بإنشاء "wc3")
 17. في 'wc3'، أنشئ الفرع 'wc3\_branch1' (فرع git، git
 الدفع)
 أ) في "wc3\_branch1":
 - غيّر "logo1.html"، ثم ارجع إلى "master" وتحقق
 الحالة، قم بالتبديل مرة أخرى إلى 'wc3\_branch1'
 - قم بتنظيم تغييراتك، وارجع إلى "الرئيسي" وتحقق
 الحالة، قم بالتبديل مرة أخرى إلى 'wc3\_branch1'
 - إجراء التغييرات، والعودة إلى "الرئيسي" والتحقق من الحالة،
 التبديل مرة أخرى إلى "wc3\_branch1"
 - مشاهدة التغييرات في gitk (gitk --all &)، ودفع التغييرات (؟)،
 سحب التغييرات (؟)
 - تغيير ارتفاع الصورة في "logo.css" إلى "150px"
 - ارتكاب التغييرات
 - التحقق من التاريخ، والعودة إلى الماجستير والتحقق من التاريخ
 مرة أخرى، أي استنتاجات؟
 ب) في "الرئيسي" قم بتطبيق التغييرات:
 - في "logo.css" قم بتغيير الارتفاع إلى "200 بكسل"
 - ارتكاب التغييرات
 - قم بإضافة صف جديد في الجدول في "logo1.html" وقم بتنفيذ ذلك
 التغيير ومشاهدته في gitk (التحديث باستخدام F5)
 - التحقق من التاريخ، وإرسال التغييرات إلى الريبو عن بعد
 - شاهده مرة أخرى باستخدام gitk (F5)
 
 التمرين 18 - قرد الشجرة
18. دمج التغييرات من الفرع الرئيسي مع
 'wc3\_branch1' (pwd، دمج git)
 18.1. إنشاء 3 فروع جديدة
 - ابدأ تشغيلها في 3 دورات مختلفة في البرنامج الرئيسي
 - ما لا يقل عن 2 دورات في كل منهما،
 - ودمجهم في الماجستير في خطوة واحدة
 (دمج البوابة)
 18.2. إنشاء فرعين جديدين
- أول واحد يبدأ في الماجستير
 - الثاني يبدأ في الأول
 - ودمجهم في بعضهم البعض بالترتيب العكسي
 (خطوتين)
 18.3. التراجع عن "الدمج"
 - إنشاء فرع بسيط بمراجعة واحدة فقط ودمجه
 إلى "الماستا"
 - التراجع عنه
 (سجل git --all --branches --graph، git reflog، gitk --all
 &، إعادة ضبط git(؟)، إرجاع git(؟))
 18.4. دفع الفروع
 http://training-course-material.com/training/Git\_-
 \_التفرع\_و\_الدمج#التمارين\_.28remote\_branching.29\_.
 E2.8C.98
 التمرين 19- ضرب حجر واحد بعدة طيور
19. Git rebase1 (شاهد التغييرات في 'gitk --all &'):
 أ) في "الرئيسي"، أضف 3 مراجعات إلى "logo\_jq.js"
 ب) قم بإنشاء فرع "lacyLuke" وقم بالتبديل إليه (git
 الخروج -ب):
 - ابدأ من HEAD~2
 - إضافة 3 مراجعات، كل منها إلى ملف مختلف
 (logo.html، logo1.html، logo2.html)
 ج) قم بإنشاء فرع "sanchoPancha" وقم بالتبديل إليه
 - ابدأ من HEAD~2
 - إضافة مراجعتين، جميعها في نفس الملف (logo.css)،
 خطوط مختلفة
 
 د) إعادة تسمية الفرع "لاكي لوك" إلى "سانتشو بانشا"
 هـ) إعادة فرع "الرئيسي" إلى "لاكيلوك"
 (rebase مع الصراع)
 19.1. جيت rebase2
 أ) قم بإنشاء فرع "منيام" والتبديل إليه
 - بوابة الخروج -ب منيام
 ب) إضافة 3 مراجعات
 - صدى منيام >> logo.html
 git الالتزام -m "mniam" -a
 - صدى mniam1 >> logo1.html
 بوابة الالتزام -m "mniam1" -a
 - صدى mniam2 >> logo2.html
 git الالتزام -m "mniam2" -a
ج) مشاهدة التغييرات في "gitk"
 - جيتك --الكل &
 د) ارجع إلى "الرئيسي" وقم بإجراء مراجعتين
 - بوابة الخروج الرئيسية
 - صدى mniam3 >> logo.html
 git الالتزام -m "mniam3" -a
 - صدى mniam4 >> logo1.html
 git الالتزام -m "mniam4" -a
 ه) تحديث gitk (F5)
 و) إعادة فرع "mniam" إلى "رئيسي"
 - فرع بوابة
 - فرع البوابة -أ
 - بوابة الخروج منيام
 - جيت rebase ماستر
 - حالة البوابة
 ز) حل المشكلة
 19.2. مقارنة بين "الدمج" و"rebase"
 أ) في "WC1"
 - إنشاء "دمج" الفرع وإجراء 3 مراجعات
 - إنشاء "دمج" الفرع وإجراء مراجعتين
 - اجمع هذين الفرعين مع "دمج" (الاندماج في
 دمج)
 ب) في "مرحاض 2"
 - قم بنفس العمليتين الأوليتين كما في أ) لكن استخدم الأسماء
 "ريبي" و "rebaser"
 - قم بدمج هذين الفرعين مع "rebase" (rebaser في الأعلى
 من ريبي)
 ج) استخدم "gitk --all &" للمقارنة بين الطريقتين
 
 19.3. العودة إلى "rebase"
 (إعادة تسجيل بوابة، إعادة تعيين بوابة)
 التمرين 20 - هل يستطيع git القيام باستحضار الأرواح؟ التمرين 21 - وضع العلامات
20. أعد إنشاء الملف "logo5.html" في "wc1"
(جيت العودة؟، بوابة الخروج؟، بوابة المعرض؟)
 21. في إحدى علامات الإنشاء الخاصة بـ "wc":
 أ) الإصدار 1.0 وتثبيته على المراجعة التي تم إجراؤها
 كتالوجات "pic" و"js"
 ب) الإصدار 1.1 وتثبيته على المراجعة التي تم إجراؤها
 كتالوج "أتش تي أم أل"
 ج) الإصدار 1.2 وتثبيته على المراجعة التي تمت إضافتها
 ملف "logo.css"
 د) إرسال العلامات إلى الريبو البعيد
 (علامة جيت)
 التمرين 22 - لماذا لا تستخدم واجهات المستخدم الرسومية؟
التمرين 23 - إفساد التكوين ببساطة
التمرين 24 - الكرز على الكعكة التمرين 25 - المزيد من السباكة؟
22. استخدم "واجهات المستخدم الرسومية" لإجراء/ملاحظة التغييرات (gitk، gitgui،
 تيج، البرنامج المساعد IDE):
 أ) إضافة ملف جديد إلى الريبو
 ب) نقل الملف الموجود إلى مكان مختلف
 ج) إزالة الملف من الريبو
 د) إثارة الصراع وحله
 ه) دفع التغييرات إلى الريبو عن بعد
 23. قم بتوصيل عرض شرائح الكتالوج "يدويًا"\_ بجهاز التحكم عن بعد
 "عرض الشرائح.جيت"
 واحصل على جميع التغييرات الأحدث من الريبو (السحب)
 (جيت عن بعد، جيت التكوين -e)
 23.1. قم بإنشاء الريبو العاري الجديد "repos/another.git" والمصدر
 ذلك في "wc3"
 24. (جيت شيري بيك)
 http://training-course-material.com/training/Git\_-
 \_التفرع\_و\_الدمج#Cherry\_Picking\_.E2.8C.98
 25. (جيت نظيفة، جيت fsck، جيت GC، جيت تقليم)
 25.1. في "مرحاض 1":
 
- تغيير logo.html
- إضافة ملف جديد 'منيام'
- نسخة عمل نظيفة
(جيت نظيفة، بوابة الخروج)
25.2. في "مرحاض 2":
- البحث عن الأشياء المتدلية (git fsck)
- انظر إلى التغييرات (عرض git)
25.3. في "مرحاض 3":
- إنشاء حالة "الرأس المنفصل" وإجراء مراجعتين
(الدفع )
- ارجع إلى "الرئيسي" وابحث عن الأشياء "المعلقة".
(فسك)
- "التدليات" النظيفة (GC)
- تحقق مرة أخرى باستخدام "fsck"
25.4. في "مرحاض 1":
- كرر أول خطوتين من 25.3.
- ابحث عن "التدليات" باستخدام "git Prune"
- تنظيف "التدليات" باستخدام "git Prune"
{"evolved_from": null, "kind": "human", "source": "ewof/sharegpt-instruct-unfiltered-deduped"}