Git Clone
آخر تحديث
git clone <url> ينسخ مستودعًا بعيدًا - جميع ملفاته وفروعه وسِجِلّه - إلى جهازك، ويُعدّ origin الذي يشير إلى المستودع البعيد حتى تتمكن من إجراء push و pull. هكذا تبدأ العمل على مشروع موجود، على عكس git init الذي يُنشئ مستودعًا فارغًا جديدًا تمامًا.
جرّب هذه الأوامر في ساحة الطرفية - صدفة حقيقية في متصفحك، لا شيء لتثبيته.
الصياغة
| Command | What it does |
|---|---|
git clone <url> | الاستنساخ إلى مجلد يحمل اسم المستودع |
git clone <url> myapp | الاستنساخ إلى مجلد باسم myapp |
git clone -b dev <url> | الاستنساخ والتبديل إلى فرع dev |
git clone --depth 1 <url> | استنساخ سطحي (أحدث commit فقط) |
git clone --recurse-submodules <url> | استنساخ المستودع ووحداته الفرعية |
HTTPS vs SSH
| Protocol | URL form |
|---|---|
| HTTPS | https://github.com/user/repo.git |
| SSH | git@github.com:user/repo.git |
الأسئلة الشائعة حول git clone
ماذا يفعل git clone؟
يُنزّل نسخة كاملة من مستودع بعيد - كل ملف وفرع وcommit - إلى مجلد محلي جديد، ويُهيّئ المستودع البعيد باسم
origin. بعد الاستنساخ يمكنك العمل والالتزام (commit) و push على الفور. على عكس git init الذي يُنشئ مستودعًا فارغًا، يجلب clone مشروعًا موجودًا مع سِجِلّه.كيف أستنسخ إلى مجلد معيّن؟
أضِف اسم المجلد بعد الرابط:
git clone <url> myfolder يستنسخ إلى myfolder بدلًا من الاسم الافتراضي للمستودع. يُنشأ المجلد إذا لم يكن موجودًا.كيف أستنسخ فرعًا معيّنًا؟
استخدم
git clone -b <branch> <url> لاستنساخ ذلك الفرع والتبديل إليه. أضِف --single-branch لجلب سِجِلّ ذلك الفرع فقط بدلًا من جميع الفروع - مفيد للمستودعات الكبيرة. راجع صفحة git clone branch لمزيد من التفاصيل.ما هو الاستنساخ السطحي؟
git clone --depth 1 <url> يجلب أحدث commit فقط بدلًا من السِجِلّ بأكمله، مما يُنتج تنزيلًا أصغر وأسرع بكثير. وهو مثالي لـ CI أو عندما تحتاج إلى أحدث كود فقط. يمكنك لاحقًا جلب المزيد من السِجِلّ باستخدام git fetch --unshallow.هل يمكنني التدرّب على هذا عبر الإنترنت؟
نعم. افتح ساحة الطرفية لتشغيل
git clone في صدفة حقيقية داخل متصفحك - لا شيء لتثبيته. كما يغطي دورة Git التفاعلية المجانية من Coddy كيفية الحصول على مستودع خطوة بخطوة.