إصلاح · جيت هب وGit
حفظت عملي على الفرع الخطأ (أو main مقابل master)
ما قد تراه
- عملت commits على main وكنت أريد فرعاً منفصلاً
- يقول الدفع src refspec main does not match any
- يعرض GitHub فرع main وجهازي يقول master
السبب الأرجح
الفرع الذي تقف عليه ليس الذي قصدته، أو أن اسم الفرع الافتراضي يختلف عمّا كتبته.
افحص أولاً (نحو دقيقتين)
- شغّل git branch --show-current لترى أين أنت.
- شغّل git branch -a لترى الفروع الموجودة محلياً وعلى GitHub.
أمر الإصلاح
ما تكتبه هنا لا يغادر متصفحك. البحث يعمل داخل هذه الصفحة ولا يُرسل شيء إلى خادم ولا إلى ذكاء اصطناعي.
يبقى في هذا المتصفح وعلى هذا الجهاز فقط. تُحذف المفاتيح وكلمات المرور قبل أي حفظ.
لغة الأمر
الصقه في Claude أو ChatGPT أو Gemini أو Cursor ثم اتبع ما يقوله.
بعد أن جرّبته، هل نجح؟
الخطوات
- شغّل git status وgit branch -a وgit log --oneline -5 واعرض عليّ النتيجة.
- أنشئ أولاً فرع أمان عند النقطة الحالية: git branch rescue-current.
- إن عملت commit على الفرع الخطأ ولم أدفع بعد: أنشئ الفرع الصحيح من هنا (git switch -c correct-name) ثم اشرح كيف أعيد الفرع الخطأ إلى origin، وانتظر موافقتي قبل التنفيذ.
- إن كانت المشكلة اسماً فقط (main مقابل master) فاعرض الاسم الحقيقي واستخدمه في أمر الدفع؛ وتغيير الاسم اختياري ويحتاج موافقتي.
لا تفعل هذا
- لا تنسخ الملفات يدوياً وتحذف المجلد: Git يستطيع نقل العمل بأمان.
- لا تدفع الفرع الخطأ "لتجرب فقط".
- لا تشغّل git reset --hard قبل أن يوجد فرع الأمان.