git clone
الإعداد وإنشاء المشاريع
نسخ مستودع إلى مجلد جديد
ينزّل الأمر 'git clone' مستودعًا — كل commit وفرع ووسم — إلى مجلد جديد، ويستخرج فرعه الافتراضي، ويتذكّر العنوان كمستودع بعيد باسم origin. يتتبّع main لديك origin/main، لذا يعمل git pull وgit push فورًا. ومع --depth تنزّل أحدث الـ commits فقط.
الصيغة
git clone [<options>] <repository> [<directory>][ ] اختياري| أو<arg> قيمة تُستبدل... قابل للتكرار--flag خيار
الخيارات
اختيار الخيار المناسب
كامل مقابل سطحي
ما الذي يُنزَّل
| الأمر | التاريخ | الأنسب لـ |
|---|---|---|
git clone <url> | كل شيء | العمل اليومي |
git clone --depth 1 <url> | آخر commit فقط | بناء CI، نظرة سريعة |
أمثلة
الاستنساخ عبر SSH
git clone git@github.com:acme/shop.gitينشئ المجلد shop.
الاستنساخ عبر HTTPS
git clone https://github.com/acme/shop.gitالشيء نفسه عبر HTTPS.
اختيار اسم المجلد
git clone git@github.com:acme/shop.git my-shopيستنسخ في my-shop.
استنساخ سطحي
git clone --depth 1 git@github.com:acme/shop.gitآخر commit فقط.
أمثلة على سير العمل
1
git clone git@github.com:acme/shop.gitتنزيله
2
cd shopالدخول إليه
3
git switch -c feature/searchبدء عملك
حل المشكلات
Permission denied (publickey)
السبب: مفتاح SSH غير مُعَدّ على GitHub
أضف مفتاحك إلى GitHub، أو استنسخ بعنوان HTTPS
fatal: destination path 'shop' already exists
السبب: يوجد مجلد بهذا الاسم
اختر اسم مجلد آخر كوسيط ثانٍ
Repository not found
السبب: عنوان خاطئ أو لا صلاحية وصول
تحقّق من العنوان ومن صلاحياتك
نصائح وأخطاء شائعة
أفضل الممارسات
- ✓استخدم عناوين SSH إن كنت تدفع كثيرًا.
- ✓استخدم --depth 1 في مسارات CI.
أخطاء متكررة
- ✗نسيان الدخول إلى المجلد الجديد بـ cd قبل تشغيل أوامر git.
- ✗الاستنساخ داخل مستودع آخر.
- ✗الاستنساخ مجددًا للتحديث — هذا عمل git pull.
الأسئلة الشائعة
A:
نعم، كفروع تتبّع بعيدة (origin/…). التبديل إلى أحدها ينشئ الفرع المحلي.
A:
git fetch --unshallow.