كيفية حل الصراع مع git-svn?
سؤال
ما هو أفضل وسيلة لحل النزاع عند القيام git svn rebase
, و بوابة فرع أنت على يصبح "(لا فرع)"?
المحلول
يمكنك استخدام git mergetool
لعرض وتحرير النزاعات بالطريقة المعتادة.ذات مرة كنت متأكدا يتم حل النزاعات لا git rebase --continue
لمواصلة ريبس ، أو إذا كنت لا تريد أن تشمل هذه المراجعة لا git rebase --skip
نصائح أخرى
في حين تقوم git svn rebase
, إذا كان لديك دمج الصراعات هنا هي بعض الأشياء التي يجب أن تذكر:
1) إذا كان أي شيء سيء يحدث أثناء إجراء ريبس سوف ينتهي على (no-branch)
فرع.
2) إذا قمت بتشغيل git status
, سترى .dotest
الملف في دليل العمل الخاص بك.هذا هو آمن تجاهل.
3) إذا كنت ترغب في إحباط ريبس استخدم الأمر التالي.1
git rebase --abort
4) إذا كان لديك دمج الصراع:
- يدويا تحرير ملفات لحل الصراعات
- المرحلة أي تغييرات مع
git add [file]
- تواصل مع ريبس
git rebase --continue
2- إذا جيت يسأل:"هل نسيت أن اتصل
git add
?", ثم التعديلات تحول الصراع إلى عدم المرجع تغيير3.تواصل معgit rebase --skip
- إذا جيت يسأل:"هل نسيت أن اتصل
قد تضطر إلى تكرار هذه العملية حتى ريبس كاملة.في أي لحظة يمكنك git rebase --abort
إلغاء والتخلي عن ريبس.
1:لا يوجد --abort
الخيار git svn rebase
.
2:لا يوجد --continue
الخيار git svn rebase
.
3:هذا أمر غريب جدا ، لكن الملفات في الدولة حيث بوابة يعتقد أنها هي نفسها بعد هذا التصحيح خاصة.الحل هو "تخطي" هذا التصحيح على ريبس.