2009-12-15 7 views
11

के साथ निर्देशिकाओं का नाम बदलना क्या जीवाश्म के साथ निर्देशिका का नाम बदलना संभव है? मैं स्पष्ट आदेश की कोशिश की है:जीवाश्म DVCS

fossil mv oldname newname 

जीवाश्म तो मुझे सूचित करता है कि यह कुछ किया है:

RENAME oldname newname 

हालांकि, "जीवाश्म परिवर्तन" एक खाली सूची में परिणाम बुला। जहां तक ​​मैं कह सकता हूं, निर्देशिकाओं का नामकरण या तो समर्थित नहीं है, अभी तक लागू नहीं किया गया है या सिर्फ टूटा हुआ है। इसके लिए क्या कोई तरकीब है?

उत्तर

17

कुछ शोध के बाद मुझे पता चला कि यह किया जा सकता है, लेकिन यह प्रतिद्वंद्वी है। जीवाश्म वास्तव में परवाह नहीं करता है कि निर्देशिकाओं के साथ क्या होता है; यह सब उनके बारे में परवाह करता है उनके भीतर फाइलों का स्थान है।

जब एक निर्देशिका का नाम बदलने, जीवाश्म कैसी दिखाई देती है:

  • वर्ष निर्देशिका के लिए फ़ाइलों का भंडार की सूची के माध्यम से पाश;
  • फाइल सिस्टम पर नई निर्देशिका में फ़ाइल का पता लगाएं;
  • फ़ाइलों के मेटाडेटा को अद्यतन करें ताकि वे नई निर्देशिका का हिस्सा बन सकें।

यदि नई निर्देशिका मौजूद नहीं है, तो यह विफल हो जाती है। नए स्थान में कोई फाइल नहीं है, इसलिए जीवाश्म पुराने से नए से मेल नहीं खा सकता है, इसलिए कोई बदलाव नहीं किया जाता है।

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

अब जब मैं इसके बारे में सोचता हूं, तो यह समझ में आता है, हालांकि अगर मैं अपने उपयोगकर्ताओं पर दो-चरणीय प्रक्रिया को मजबूर करने के बजाय फाइल सिस्टम को ही अपडेट कर दूंगा तो मैं इसे पसंद करूंगा।

एक परिशिष्ट के रूप में, जीवाश्म को खाली निर्देशिका जोड़ना असंभव प्रतीत होता है। मुझे लगता है कि आंतरिक रूप से यह सिर्फ फाइलों को स्टोर करता है; फ़ोल्डरों को मेटाडेटा माना जाता है। एक खाली फ़ोल्डर मेटाडेटा कुछ भी वर्णन नहीं कर रहा है, इसलिए उन्हें जोड़ना कोई समझ नहीं आता है।

+1

बिल्कुल। यदि यह एक गहरी निर्देशिका है, तो मैं पहले पूरी संरचना की प्रतिलिपि बनाता हूं। खाली डीआईआर के लिए, मैं एक .placeholder में जांचता हूं –