diff --git a/downloads/ar/github-git-cheat-sheet.md b/downloads/ar/github-git-cheat-sheet.md index 705ba71d3..e6f7ac5a4 100644 --- a/downloads/ar/github-git-cheat-sheet.md +++ b/downloads/ar/github-git-cheat-sheet.md @@ -1,118 +1,99 @@ ---- layout: cheat-sheet redirect_to: false -title:
برشامة أوامر Git لنظام GitHub
-byline:

أمر Git هو نظام تحكم بالنسخ الموزعة المفتوحة المصدر التي توظف أنشطة GitHub في الحواسيب الشخصية. هذه "البرشامة" تلخص تعليمات Git الأكثر استخداماً على سطر الأوامر كمرجع سري

-leadingpath: ../../../ +title: مرجع أوامر Git من GitHub +byline: Git هو نظام مفتوح المصدر للتحكم في الإصدارات الموزعة، يتيح إدارة الأنشطة على GitHub من جهازك. يلخص هذا المرجع الأوامر الأكثر شيوعًا لاستخدام Git عبر سطر الأوامر. +leadingpath: ../../ --- {% capture colOne %} -

تنصيب Git

-

نظام GitHub يوفر برنامج عميل لسطح المكتب يشمل واجهة مستخدم رسومية لنشاطات المستودعات الأكثر شيوعاً وتحديث نسخة سطر أوامر Git تلقائياً للحالات المتقدمة.

+## تثبيت Git + +### GitHub Desktop +[desktop.github.com](https://desktop.github.com) + +### Git لجميع الأنظمة +[git-scm.com](https://git-scm.com) + +## إعداد الأدوات +تهيئة معلومات المستخدم لجميع المستودعات المحلية: -

GitHub لنظام تشغيل وندوز

-

windows.github.com

+```$ git config --global user.name "[الاسم]"``` -

GitHub لنظام تشغيل ماك

-

mac.github.com

+لتحديد الاسم الذي يتم إرفاقه مع عمليات الحفظ. -

توزيعات Git لأنظمة لينكس وPosix متوفرة في موقع Git SCM الرسمي.

+```$ git config --global user.email "[البريد الإلكتروني]"``` -

Git لكل أنظمة التشغيل

-

git-scm.com

+لتحديد البريد الإلكتروني الذي يتم إرفاقه مع عمليات الحفظ. -

إعادة تكوين الأدوات

-

إعداد معلومات المستخدم لجميع المستودعات المحلية

+```$ git config --global color.ui auto``` -

$ git config --global user.name "[الاسم]"

+لتفعيل تلوين المخرجات في سطر الأوامر. -

إعداد الاسم المراد إدراجه في إجراءات تنفيذ أو "ارتكاب" التغييرات

+## الفروع Branches -

$ git config --global user.email "[البريد الالكتروني]"

-

إعداد البريد الالكتروني المراد إدراجه في إجراءات تنفيذ أو "ارتكاب" التغييرات

+الفروع هي جزء أساسي من العمل مع Git. أي تغييرات تحفظها ستكون مرتبطة بالفرع الذي تعمل عليه حاليًا. استخدم `git status` لمعرفة الفرع الحالي. +```$ git branch [اسم-الفرع]``` -

صنع المستودعات

-

بدء مستودع جديد أو الحصول على مستودع موجود مسبقاً عن طريق وصلة

+لإنشاء فرع جديد. +```$ git switch -c [اسم-الفرع]``` -

$ git init [اسم المشروع]

+للتبديل إلى فرع معين وتحديث مسار العمل. -

صنع مستودع جديد بالمسمى المعطى

+```$ git merge [الفرع]``` +لدمج تاريخ فرع معين في الفرع الحالي. غالبًا يتم ذلك عبر طلبات السحب (Pull Requests). -

$ git clone [رابط المشروع]

+```$ git branch -d [اسم-الفرع]``` -

تحميل مشروع بماضيه الشامل لكل النسخ الحالية والسابقة

+لحذف فرع معين. {% endcapture %}
{{ colOne | markdownify }}
- {% capture colTwo %} +## إنشاء المستودعات (Repositories) -

إحداث تغييرات

-

مراجعة التغييرات وتشكيل إجراء "ارتكاب" التغييرات

- - -

$ git status

- -

إدراج جميع الملفات الجديدة أو التي تم تغييرها وتنتظر أن يتم ارتكابها

- - -

$ git diff

- -

إظهار كل التغييرات في الملفات المتغيرة التي لم يتم إضافتها لقائمة الترحيل

- - -

$ git add [اسم الملف]

- -

إضافة الملف لقائمة الترحيل للتحضير ليتم ارتكابها

- - -

$ git diff --staged

+يمكن إنشاء مستودع جديد محليًا أو استنساخ مستودع موجود. إذا أنشأت مستودعًا محليًا، عليك دفعه (push) إلى GitHub لاحقًا. -

إظهار كل التغييرات في الملفات المتغيرة في قائمة الترحيل والمختلفة عن الموجودة في المستودع حالياً

+```$ git init``` +هذا الأمر يقوم بتحويل المجلد الذي تقوم بتنفيذ الأمر بداخله الى مستودع Git جديد، بعد استخدام هذا الأمر، عليك ربط المستودع المحلي بمستودع فارغ على GitHub باستخدام الامر التالي: -

$ git reset [اسم الملف]

+```$ git remote add origin [رابط]``` -

إزالة الملف من قائمة الترحيل مع الحفاظ على المحتوى الجديد دون تغيير.

+لتحديد المستودع البعيد الذي سيتم ربط المستودع المحلي به، من خلال تحديد الرابط للمستودع على GitHub. +```$ git clone [رابط]``` -

$ git commit -m"[تعليق توضيحي]"

+لاستنساخ (تحميل) مستودع موجود على GitHub، بما في ذلك الملفات files والفروع branches والتعديلات commits. -

ارتكاب التغييرات الموجودة في قائمة الترحيل وحفظها في ماضي النسخ

+## ملف .gitignore -

التغييرات الجماعية

-

تسمية مجموعة من التغييرات المرتكبة وجمع الجهود المكتملة

+لتجاهل بعض الملفات ومنع تتبعها بواسطة Git. عادةً يتم ذلك باستخدام ملف خاص يسمى `.gitignore`. يمكنك العثور على قوالب مفيدة لهذا الملف عبر الرابط: [github.com/github/gitignore](https://github.com/github/gitignore). +## مزامنة التغييرات -

$ git branch

+لمزامنة المستودع المحلي مع المستودع البعيد على GitHub: -

إدراج قائمة بكل الفروع المحلية للمستودع الحالي

+```$ git fetch``` +لتحميل جميع التغييرات من الفروع البعيدة. -

$ git branch [اسم الفرع]

+```$ git merge``` -

تكوين فرع جديد

+لدمج التغييرات من الفروع البعيدة في الفرع المحلي الحالي. +```$ git push``` -

$ git switch -c [اسم الفرع]

+لدفع جميع التعديلات المحلية local commits إلى GitHub. -

التغيير إلى فرع معين وتحديث المسار الحالي

+```$ git pull``` - -

$ git merge [اسم الفرع]

- -

دمج الفرع الحالي بفرع آخر ماضي

- - -

$ git branch -d [اسم الفرع]

- -

حذف فرع معين

+لتحديث الفرع المحلي الحالي بجميع التغييرات الجديدة من الفرع البعيد المقابل. `git pull` يجمع بين `git fetch` و `git merge`. {% endcapture %}
@@ -120,64 +101,48 @@ leadingpath: ../../../
- {% capture colThree %} -

إزالة وتغيير الملفات

-

تحريك وإزالة الملفات التي تتم متابعة نسخها

- - -

$ git rm [اسم الملف]

+## إجراء التغييرات -

حذف الملف وإضافة عملية الحذف لقائمة الترحيل

+استعراض وفحص تطور الملفات داخل المشروع: +```$ git log``` -

$ git rm --cached [اسم الملف]

+لعرض تاريخ الإصدارات للفرع الحالي. -

إلغاء عملية تتبع نسخ الملف مع الحفاظ على الملف محلياً (الملف موجود محليّاً لكنه لا يظهر على Github(

+```$ git log --follow [ملف]``` +لعرض تاريخ إصدار ملف معين، بما في ذلك التغييرات السابقة على الاسم (Renames) (يعمل لملف واحد فقط). -

$ git mv [اسم الملف الأصلي] [اسم الملف الجديد]

+```$ git diff [فرع-أول]...[فرع-ثاني]``` -

تغيير اسم الملف والتحضير لارتكاب التغييرات

+لعرض الاختلافات بين فرعين. -

قمع تتبع الملفات

-

استثناء الملفات والمجلدات المؤقتة

+```$ git show [تعديل]``` -

-*.log -build/ -temp-* -

+لعرض بيانات metadata وتغييرات المحتوى المرتبطة بالتعديل (Commit). -

استخدام ملف نصي بمسمى .gitignore يمنع تتبع الملفات والمجلدات الغير مرغوبة بتحديد أنماط تسمية هذه الملفات

+```$ git add [ملف]``` +لإعداد الملف للحفظ ضمن الإصدار الجديد. -

$ git ls-files --others --ignored --exclude-standard

+```$ git commit -m "[رسالة وصفية]"``` -

سرد قائمة بكل الملفات التي تم تجاهلها في المشروع الحالي

+لحفظ التغييرات بشكل دائم في الإصدار. -

حفظ المتغيرات الصغيرة

-

التخزين الجانبي واستعادة المتغيرات غير المكتلمة

+## إعادة تنفيذ التعديلات +لإصلاح الأخطاء أو تعديل السجل: -

$ git stash

+```$ git reset [تعديل]``` -

تخزين مؤقت لكل الملفات المتغيرة التي تتم متابعتها

+لإلغاء جميع التعديلات بعد `[تعديل]` مع الحفاظ على التغييرات محليًا. +```$ git reset --hard [تعديل]``` -

$ git stash pop

+لإلغاء جميع السجل والتغييرات والعودة إلى التعديل المحدد. -

استعادة آخر الملفات المتغيرة التي تم تخزينها مؤخراً بشكل مؤقت

- - -

$ git stash list

- -

سرد قائمة بكل عمليات التخزين المؤقتة التي لم يتم استعادتها بعد

- - -

$ git stash drop

- -

التخلص من آخر الملفات المتغيرة التي تم تخزينها مؤخراً بشكل مؤقت

+> **تحذير!** تغيير السجل قد يسبب مشاكل كبيرة، خاصة إذا تم دفع التعديلات إلى GitHub. كن حذرًا واطلب المساعدة إذا لزم الأمر عبر [github.community](https://github.community) أو دعم GitHub. {% endcapture %}
@@ -185,66 +150,20 @@ temp-*
{% capture colFour %} -

مراجعة ماضي التغييرات

-

تصفح وتفحص تطور ملفات المشروع

- - -

$ git log

- -

سرد قائمة بماضي النسخ للفرع الحالي

- - -

$ git log --follow [اسم الملف]

- -

سرد قائمة بماضي نسخ ملف معين (يشمل تغيير الاسم)

- - -

$ git diff [الفرع الثاني]...[الفرع الأول]

- -

عرض اختلافات المحتوى من فرع لآخر

- - -

$ git show [عملية ارتكاب]

- -

عرض البيانات الوصفية وتغييرات المحتوى لعملية ارتكاب معينة

- -

التراجع عن عمليات الارتكاب

-

مسح الأخطاء واستبدال جزء من الماضي

- - -

$ git reset [عملية ارتكاب]

- -

إلغاء جميع عمليات ارتكاب التغييرات بعد [عملية ارتكاب] مع الحفاظ على التغييرات محليّاً

- - -

$ git reset --hard [عملية ارتكاب]

- -

إلغاء جميع عمليات ارتكاب التغييرات واستعادة الملفات إلى وضعها السابق وقت عملية ارتكاب التغييرات

- -

مزامنة التغييرات

-

تسجيل علامة مرجعية للمستودع وتبادل ماضي النسخ

- - -

$ git fetch [علامة مرجعية]

- -

تحميل كل ماضي المستودع من العلامة المرجعية

- - -

$ git merge [فرع]/[علامة مرجعية]

- -

دمج فرع لعلامة مرجعية مع الفرع المحلي الحالي

- - -

$ git push [alias] [فرع]

- -

رفع كل عمليات ارتكاب التغيرات للفرع المحلي على Github

- - -

$ git pull

- -

تحميل ماضي العلامة المرجعية ودمج التغييرات

+## المصطلحات + +- **git**: نظام مفتوح المصدر لإدارة الإصدارات الموزعة. +- **GitHub**: منصة لاستضافة التعاون على مستودعات Git. +- **commit (تعديل)**: كائن Git يمثل لقطة من المستودع بالكامل. +- **branch (فرع)**: مؤشر متحرك خفيف يشير إلى تعديل. +- **clone (استنساخ)**: نسخة محلية من مستودع يشمل جميع الفروع والتعديلات. +- **remote (بعيد)**: مستودع مشترك على GitHub لتبادل التغييرات بين الأعضاء. +- **fork (نسخة)**: نسخة من مستودع على GitHub يملكها مستخدم آخر. +- **pull request (طلب سحب)**: مساحة لمقارنة ومناقشة الفروقات بين الفروع. +- **HEAD**: يشير إلى مسار العمل الحالي. يمكن تحريكه بين الفروع أو التعديلات باستخدام `git switch`. {% endcapture %}
{{ colFour | markdownify }}
+