2009-06-07 12 views
19

पर जाने से विजुअल सोर्सएफ़ रेपॉजिटरी को Mercurial में स्थानांतरित करने का सबसे अच्छा तरीका क्या है (मुझे सभी इतिहास को बनाए रखने में दिलचस्पी है)?विजुअल सोर्सएफ़ से Mercurial

उत्तर

14

जबकि मैंने यह विशेष रूपांतरण नहीं किया है, मैं (आईआईआरसी) this script का उपयोग कर वीएसएस से एसवीएन में गया हूं। आप शायद दर्जी में देखना चाहते हैं और vss2hg के लिए एक खोज करना चाहते हैं। यह भी ध्यान रखें कि vss2svn + svn2hg या इसी तरह के मध्यवर्ती चरण से गुज़रना समझ में आता है।

सलाह का प्राथमिक बिट जो मैं देता हूं वह है: रूपांतरण को स्क्रिप्ट करें ताकि आप इसे आसानी से फिर से चला सकें। इससे आपको वीएसएस से एचजी तक रात के रूपांतरण चलने दें और सुनिश्चित करें कि आप उस पर ट्रिगर खींचने से पहले सबकुछ सही ढंग से परिवर्तित हो रहे हैं।

5

Mercurial विकी में यह पृष्ठ है, जो रुचि का हो सकता है: https://www.mercurial-scm.org/wiki/SourceSafeConversion। मैंने कभी भी विजुअल स्रोत सुरक्षित नहीं किया है, इसलिए मेरे पास इसका कोई व्यक्तिगत अनुभव नहीं है।

मुझे इस विषय के बारे में mail from Patrick Mézard भी मिला, लेकिन दुर्भाग्यवश वह लिखता है कि एक वीएसएस कनवर्टर मुश्किल होगा। वह पहले सबवर्सन में परिवर्तित होने के बारे में भी बात करता है, और फिर सबवर्सन से मरकुरियल तक। मुझे लगता है कि इसका मतलब है कि वीएसएस -> एसवीएन वहां परिवर्तित हो जाता है। आप शायद खुद को Google कर सकते हैं।

6

मैंने here से vss2hg.pl स्क्रिप्ट का उपयोग किया। यह एक पर्ल स्क्रिप्ट है, इसलिए आपको पहले ActivePerl इंस्टॉल करना होगा।

यह बहुत अच्छा काम करता है, लेकिन मैं तिथियों के साथ एक समस्या में भाग गया। यह पता चला है कि लिपि तीन प्रकार के दिनांक स्वरूपों का समर्थन करता है। डिफ़ॉल्ट रूप से यह यूके दिनांक प्रारूप (लाइन 547 में) पर सेट है। कोड में अन्य दो दिनांक प्रारूपों पर टिप्पणी की गई है। यूएस दिनांक प्रारूप को सक्षम करने के बाद, स्क्रिप्ट ने बिना किसी समस्या के मेरे स्रोतसेफ डेटाबेस को परिवर्तित कर दिया।

+2

मैंने स्क्रिप्ट पर कुछ फिक्स किए हैं। आप इसे डाउनलोड कर सकते हैं [यहां] (http://edmundv.home.xs4all.nl/sw/vss2hg.pl)। – Edmund

+0

ऐसा लगता है कि vss2hg.pl के अधिकांश प्रकाशित लिंक टूटे हुए हैं। क्या आप सुधार के रूप में सुधार या रीडायरेक्ट प्रदान कर सकते हैं? मैंने कुछ परीक्षण और त्रुटि के बाद पता चला है कि स्क्रिप्ट का पुराना संस्करण (http://mercurial.selenic.com/wiki/SourceSafeConversion से जुड़ा हुआ) http://mercurial.selenic.com/wiki/SourceSafeConversion पर उपलब्ध है? action = AttachFile & do = view & target = vss2hg.pl और एक नवीनतम संस्करण उपलब्ध है (लेकिन Google खोज परिणामों को छोड़कर कहीं भी प्रकाशित नहीं किया गया है) http://edmundv.home.xs4all.nl/sw/vss2hg.pl – BlueMonkMN

13

मैं vss2hg.pl स्क्रिप्ट का लेखक हूं और इसे VSS से Mercurial तक कई परियोजनाओं को स्थानांतरित करने के लिए उपयोग किया है। इसमें एक या दो मामूली बग हैं जहां कुछ टिप्पणियां पूरी तरह से परिवर्तित नहीं होती हैं लेकिन मैंने कोई अन्य समस्या नहीं देखी है। यह पूर्ण इतिहास और कार्यों को परिवर्तित करता है-वीएसएस के साथ एक समस्या के आसपास जहां उपयोगकर्ता की पीसी घड़ी उस क्रम को प्रभावित कर सकती है जिसमें परिवर्तन दिखाई देते हैं।

स्क्रिप्ट का एक संस्करण here उपलब्ध है।

+0

वेबसाइट अब और नहीं है ऐसा लगता है कि – lstanczyk

+0

नीचे @Edmund से जुड़े संस्करण का उपयोग करें; वह अब इसे बनाए रख रहा है क्योंकि हमने वीएसएस आदत को लात मार दिया है। – trojanfoe

0

मैंने अभी vss2hg का उपयोग करने की कोशिश की और एक समस्या में भाग गया कि यह केवल पिकअप और 1 उपयोगकर्ता को परिवर्तित कर दिया गया है। इसका मतलब है कि मेरे सभी परिवर्तन आदि सटीक नहीं होंगे क्योंकि मैं यह देखने में सक्षम नहीं होगा कि उन्हें किसने किया था। ऐसा इसलिए है क्योंकि मैंने एचजी में सभी आवश्यक उपयोगकर्ताओं को पूर्व-सेटअप नहीं किया है?

+3

हो सकता है कि आप इसे अपने स्वयं के प्रश्न के रूप में पूछने के लिए बेहतर भाग्य प्राप्त कर सकें। –

3

मैंने क्लाइंट के लिए SourceSafe से Mercurial में रूपांतरण किया है। मैंने पहले सोर्ससेफ डेटाबेस को एक सबवर्जन रिपोजिटरी में परिवर्तित किया और फिर एचजी कन्वर्ट एक्सटेंशन का उपयोग करके सबवर्जन से मर्कुरियल तक। विवरण के लिए my blog post देखें।