You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
2 months ago | |
|---|---|---|
| .. | ||
| README.md | 2 months ago | |
README.md
أساسيات GIT للمبتدئين في تطوير الويب 👶
ما هو Git؟
- Git هو نظام تحكم في الإصدارات موزع.
- قاعدة البيانات الكاملة والتاريخ متاحة على جهاز كل مطور، مما يسهل عملية إنشاء الفروع ودمجها.
- يُستخدم كنظام تحكم في الإصدارات (VCS) لتتبع التغييرات في الملفات الحاسوبية.
- نظام تحكم موزع في الإصدارات
- ينسق العمل بين عدة مطورين
- معرفة من قام بإجراء التغييرات ومتى
- إمكانية الرجوع إلى أي وقت سابق
- مستودعات محلية وعن بُعد
مفاهيم GIT
- يتتبع تاريخ الكود
- يأخذ "لقطات" لملفاتك
- أنت تقرر متى تأخذ لقطة عن طريق إنشاء "commit"
- يمكنك زيارة أي لقطة في أي وقت
- يمكنك تجهيز الملفات قبل الالتزام
الفرق بين Git و GitHub
| Git | GitHub |
|---|---|
| Git هو برنامج | GitHub هو خدمة سحابية |
| يتم تثبيت Git محليًا على النظام | GitHub مستضاف على الإنترنت |
| أداة تعتمد على سطر الأوامر | واجهة مستخدم رسومية |
| يتم صيانته بواسطة Linux | يتم صيانته بواسطة Microsoft |
| يركز على التحكم في الإصدارات ومشاركة الكود | يركز على استضافة الكود المصدر المركزي |
| Git مفتوح المصدر | GitHub يتضمن مستوى مجاني ومستوى مدفوع |
| تم إصدار Git في عام 2005 | تم إصدار GitHub في عام 2008 |
تثبيت GIT
- Linux (Debian)
$sudo apt-get install git - Linux (Fedora)
$sudo yum install git - تحميل لنظام Mac
- تحميل لنظام Windows
خطوات عملية التثبيت:
-
-
-
-
-
- ثم متابعة Next > Next > Next > Install
-
بعد التثبيت، نحتاج إلى إعداد Git باستخدام Git Bash
git config --global user.name 'YourName'git config --global user.email 'YourEmail'
أوامر Git
الحصول على المشاريع وإنشاؤها
| الأمر | الوصف |
|---|---|
git init |
تهيئة مستودع Git محلي |
git clone ssh://git@github.com/[username]/[repository-name].git |
إنشاء نسخة محلية من مستودع بعيد |
أخذ اللقطات الأساسية
| الأمر | الوصف |
|---|---|
git status |
التحقق من الحالة |
git add [file-name.txt] |
إضافة ملف إلى منطقة التجهيز |
git add -A |
إضافة جميع الملفات الجديدة والمعدلة إلى منطقة التجهيز |
git commit -m "[commit message]" |
الالتزام بالتغييرات |
git rm -r [file-name.txt] |
إزالة ملف (أو مجلد) |
git push |
الدفع إلى المستودع البعيد |
git pull |
سحب أحدث التغييرات من المستودع البعيد |
إنشاء الفروع ودمجها
| الأمر | الوصف |
|---|---|
git branch |
عرض الفروع (الفرع الحالي يتم الإشارة إليه بعلامة النجمة) |
git branch -a |
عرض جميع الفروع (محلية وبعيدة) |
git branch [branch name] |
إنشاء فرع جديد |
git branch -D [branch name] |
حذف فرع |
git push origin --delete [branch name] |
حذف فرع بعيد |
git checkout -b [branch name] |
إنشاء فرع جديد والانتقال إليه |
git checkout -b [branch name] origin/[branch name] |
نسخ فرع بعيد والانتقال إليه |
git branch -m [old branch name] [new branch name] |
إعادة تسمية فرع محلي |
git checkout [branch name] |
الانتقال إلى فرع |
git checkout - |
الانتقال إلى الفرع الذي تم التحقق منه آخر مرة |
git checkout -- [file-name.txt] |
تجاهل التغييرات في ملف |
git merge [branch name] |
دمج فرع في الفرع النشط |
git merge [source branch] [target branch] |
دمج فرع في فرع مستهدف |
git stash |
تخزين التغييرات في دليل العمل |
git stash clear |
إزالة جميع الإدخالات المخزنة |
مشاركة المشاريع وتحديثها
| الأمر | الوصف |
|---|---|
git push origin [branch name] |
دفع فرع إلى المستودع البعيد |
git push -u origin [branch name] |
دفع التغييرات إلى المستودع البعيد (وتذكر الفرع) |
git push |
دفع التغييرات إلى المستودع البعيد (الفرع المتذكر) |
git push origin --delete [branch name] |
حذف فرع بعيد |
git pull |
تحديث المستودع المحلي إلى أحدث التزام |
git pull origin [branch name] |
سحب التغييرات من المستودع البعيد |
git remote add origin ssh://git@github.com/[username]/[repository-name].git |
إضافة مستودع بعيد |
git remote set-url origin ssh://git@github.com/[username]/[repository-name].git |
تعيين فرع الأصل للمستودع إلى SSH |
التفتيش والمقارنة
| الأمر | الوصف |
|---|---|
git log |
عرض التغييرات |
git log --summary |
عرض التغييرات (بالتفصيل) |
git log --oneline |
عرض التغييرات (بإيجاز) |
git diff [source branch] [target branch] |
معاينة التغييرات قبل الدمج |
إخلاء المسؤولية:
تم ترجمة هذا المستند باستخدام خدمة الترجمة بالذكاء الاصطناعي Co-op Translator. بينما نسعى لتحقيق الدقة، يرجى العلم أن الترجمات الآلية قد تحتوي على أخطاء أو معلومات غير دقيقة. يجب اعتبار المستند الأصلي بلغته الأصلية المصدر الرسمي. للحصول على معلومات حاسمة، يُوصى بالاستعانة بترجمة بشرية احترافية. نحن غير مسؤولين عن أي سوء فهم أو تفسيرات خاطئة ناتجة عن استخدام هذه الترجمة.