تخطَّ إلى المحتوى

git push (remote groups)

دفع لعدّة مستودعات بعيدة دفعة واحدة git push (remote groups)

بدءًا من Git 2.55، يقبل git push اسم مجموعة remotes معرّفة في الإعدادات، فيدفع الفرع لكل عضو فيها بأمر واحد بدل تكرار push لكل مستودع على حدة.

مجموعة الـ remotes (remote group) قائمة أسماء remotes مفصولة بمسافة، تُعرَّف في الإعدادات تحت مفتاح remotes.<اسم-المجموعة>. كانت هذه المجموعات تُستخدم أصلًا مع git remote update لتحديث عدّة remotes بأمر fetch واحد؛ من Git 2.55 صار git push يقبلها أيضًا — فيشغّل Git عملية push منفصلة لكل remote في المجموعة بالتتابع، بنفس الفرع والخيارات في كل مرّة.

الصياغة

git push <مجموعة-remotes> [فرع]

📄 مثال

# .git/config
[remotes]
    all = origin backup

git push all main   # يدفع main إلى origin ثم إلى backup بالتتابع

أهم الخيارات

الخيارالوظيفة
remotes.<اسم>مفتاح إعداد يحدّد قائمة remotes مفصولة بمسافة تشكّل مجموعة باسم معيّن
--atomicغير مدعوم مع مجموعات remotes — الذرّية مضمونة فقط ضمن اتصال واحد لمستودع واحد

💡 نصائح عملية

  • مفيد لمشاريع تُنشر على أكثر من مزوّد استضافة (GitHub + GitLab مثلًا) دون تكرار أمر push يدويًا لكل واحد

⚠️ أخطاء شائعة

  • توقّع push ذرّي (atomic) عبر كل مستودعات المجموعة دفعة واحدة — كل remote يُعامل بشكل مستقل، فقد ينجح لبعضها ويفشل لغيرها

خصائص ذات صلة

🎓 تريد فهم الصورة الكاملة خطوة بخطوة؟ ابدأ من مسار GIT الكامل بالعربي.