2009-12-15 10 views
7

जब फ़ाइलों को svn भंडार के रूप में हटा दिया जाता है, तब भी वे पुराने संशोधनों की जांच करने वाले उपयोगकर्ताओं द्वारा उपयोग किए जा सकते हैं। यह स्पष्ट रूप से स्रोत नियंत्रण के महान फायदों में से एक है।क्या एक एसवीएन भंडार से फ़ाइल मिटाना संभव है?

क्या भंडार से फ़ाइल मिटाना संभव है? मुझे पता है कि यह फाइल वाले पिछले संशोधन की अखंडता से समझौता करेगा।

उदाहरण के लिए, स्वामित्व कोड ओपन सोर्स प्रोजेक्ट के सार्वजनिक svn भंडार के लिए अनजाने में प्रतिबद्ध हो सकता है। क्या भंडार से इसे हटाने का कोई समर्थित तरीका है, इसलिए इसे पिछले संशोधनों पर वापस देखकर भी पुनर्प्राप्त नहीं किया जा सकता है?

उत्तर

16

http://subversion.tigris.org/faq.html#removal

विशेष मामलों में आप किसी फ़ाइल के सभी सबूत मिटाने या प्रतिबद्ध करने के लिए चाहते हो सकता है कर रहे हैं। (शायद किसी ने गलती से एक गोपनीय दस्तावेज किया है।) यह इतना आसान नहीं है, क्योंकि सबवर्सन जानबूझकर सूचना खोने के लिए डिज़ाइन किया गया है। संशोधन अपरिवर्तनीय पेड़ हैं जो एक दूसरे पर बनाते हैं। इतिहास से एक संशोधन को हटाने से डोमिनोज़ प्रभाव पड़ता है, सभी बाद के संशोधन में अराजकता पैदा हो सकती है और संभवतः सभी कार्यशील प्रतियों को अमान्य कर दिया जाता है।

प्रोजेक्ट की योजना है, हालांकि, किसी दिन एक svnadmin obliterate कमांड को लागू करने के लिए जो स्थायी रूप से जानकारी को हटाने का कार्य पूरा करेगा। (अंक 516 देखें।)

इस बीच, आपका एकमात्र सहारा svnadmin आपके भंडार को डंप करना है, फिर svnumpmin लोड कमांड में svndumpfilter (खराब पथ को छोड़कर) के माध्यम से डंपफाइल पाइप करें। इसके बारे में विवरण के लिए सबवर्जन पुस्तक के अध्याय 5 देखें।

संबंधित मुद्दे