سؤال

كنت أتساءل إذا قمت بالنقر بزر الماوس الأيمن على ملف في متصفح SVN repo، فهل سيتم حذفه نهائيًا؟هل يمكن استعادتها؟

هل كانت مفيدة؟

المحلول

هذا السؤال/الجواب من الأسئلة الشائعة حول SVN قد تهمك:

كيف أقوم بإزالة ملف بالكامل من سجل المستودع؟

هناك حالات خاصة قد ترغب في تدميرها لجميع الأدلة على ملف أو ارتكاب. (ربما ارتكب شخص ما عن طريق الخطأ وثيقة سرية.) هذا ليس بالأمر السهل ، لأن التخريب مصمم عمداً لإقامة المعلومات أبدًا.المراجعات هي أشجار غير قابلة للتغيير التي تبني على بعضها البعض.إن إزالة المراجعة من التاريخ من شأنه أن يتسبب في تأثير الدومينو ، وخلق الفوضى في جميع المراجعات اللاحقة وربما إبطال جميع نسخ العمل.

ومع ذلك ، لدى المشروع خطط لتنفيذ يوما ما svnadmin obliterate الأمر الذي من شأنه أن ينجز مهمة حذف المعلومات بشكل دائم.(انظر العدد 516).

في غضون ذلك ، فإن اللجوء الوحيد الخاص بك هو svnadmin dump مستودعك ، ثم قم بتنشيط الخفاش من خلال svndumpfilter (باستثناء المسار السيئ) إلى svnadmin load يأمر.

إذا كان الأمر بهذه الصعوبة، فهناك فرص قليلة للقيام بذلك بسهولة من Tortoise SVN...
(وهذا ليس هدف التحكم بالمصادر...)

نصائح أخرى

وستجد أنه يمكنك فقط حذف من متصفح الريبو عند عرض مراجعة الرأس. هذا هو مماثل لحذف الملف من نسخة العمل الخاصة بك ومن ثم التحقق في الحذف. في كلتا الحالتين، عليك أن تكون قادرا على استعادة من المراجعة السابقة.

وحذف الملفات عبر قائمة السياق الريبو متصفح يخلق أساسا مراجعة عالمي جديد حيث فقط تم حذف هذا الملف، لذلك يظهر في سجل على هذا النحو - يمكنك العودة دائما إلى أن المراجعة للحصول على الملف مرة أخرى، أو كنت يمكن فقط سحب مباشرة من مستودع في نسخة العمل الخاص بك.

ولا ... حذف ملف (حتى باستخدام متصفح الريبو) يؤثر فقط على نسخ العمل. وسيكون نظام مراجعة مراقبة رديء جدا إذا كنت لا يمكن استرداد ملف من الماضي. هو في الواقع من الصعب جدا لتعديل الملفات في مراجعة الملتزمين، حتى إذا كان لديك وصول الجذر إلى الملقم.

ولا بزر الماوس الأيمن فوق جلب للتو نوعا من القائمة؟ ومع SVN هو أنه يمكنك العودة دائما على أي حال.

لقد قمت بحذف دليل المستوى الأعلى من متصفح Repo عن طريق الصدفة وكانت الطريقة الوحيدة لاستعادته هي التالية:

  • قم بتصدير مجلد المستوى الأعلى من سجل الإصدار السابق
  • قم بإنشاء مجلد جديد في المستودع ليحل محل المجلد المحذوف.
  • أضف الملفات المصدرة مرة أخرى إلى الدليل الجديد (نفس الاسم السابق)
  • قم بتحديث نسخة العمل، وسوف تقوم بحذف نفس الملفات ثم إعادة إضافتها.

إنه أمر مزعج ولكن على الأقل ستتم مزامنة العمل والريبو."التراجع عن التغييرات من هذه المراجعة" لم ينجح في التراجع عن عمليات حذف الريبو، فهو يعود فقط في دليل العمل وليس "التراجع" عن الحذف إلى المستودع.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top