2008-09-12 12 views
25

मैं एक एकल डेवलपर हूं जो विजुअल सोर्स सेफ़ को दूर करने और svn पर जाने के लिए देख रहा है।वीएसएस से सबवर्सन में माइग्रेट करने का सबसे अच्छा तरीका?

एक त्वरित खोज कई टूल लाती है, लेकिन मुझे स्पष्ट विजेता नहीं दिख रहा है और मैं विभिन्न उपकरणों का परीक्षण करने में काफी समय व्यतीत नहीं कर सकता।

क्या किसी ने इसे सफलतापूर्वक किया है, और एक विधि की सिफारिश कर सकते हैं?

उत्तर

28

मैं वीएसएस से आयात करने के बजाए बस एक नया सबवर्जन भंडार में अपना कोड जोड़ने की सलाह देता हूं। वीएसएस में एक जटिल संस्करण नियंत्रण मॉडल है जो कई अन्य प्रणालियों के लिए अच्छी तरह से अनुवाद नहीं करता है, और केवल ताजा शुरू करना आमतौर पर आपके साथ उस अव्यवस्था को लेने से बचने का सबसे अच्छा तरीका है।

यदि आपको इतिहास को चारों ओर रखने की आवश्यकता है, तो अपना VSS रिपॉजिटरी केवल पढ़ने के लिए करें।

+2

सुनिश्चित करें कि आप एसवीएन में आयात करने से पहले अपने चेकआउट में वीएसएस की पत्तियां जो भी क्रूर फाइलें हटाते हैं, सुनिश्चित करें कि सभी जेनरेट की गई फाइलें भी चली गई हैं। – jodonnell

+6

मैं इस से सहमत नहीं हूं। मेरी कंपनी लगभग 10 वर्षों तक वीएसएस का उपयोग कर रही है और अगर हम "ताज़ा शुरू कर देते हैं तो बहुत सारे इतिहास गायब होंगे।" मैं सहमत हूं कि वीएसएस कचरा है लेकिन यह कुछ भी नहीं है और केवल फाइल इतिहास के वर्षों को फेंकना एक बड़ी गलती है। –

+8

भविष्य के संदर्भ के लिए बस VSS में सामान को फ्रीज करें (यानी केवल पढ़ने के लिए) (जिसे आप लगभग निश्चित रूप से कभी नहीं देखेंगे!) और सबवर्जन के साथ फिर से शुरू करें। –

0

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

राजनीतिक कारणों के लिए, मैंने कुछ वाकई हैकी स्क्रिप्ट लिखीं जो वीएसएस को सबवर्जन से परिवर्तनों के साथ अद्यतन रखती थीं। ये थोड़ी देर के लिए काम करते थे, लेकिन हर हफ्ते या दो तोड़ते रहे, जब तक किसी ने किसी निर्देशिका या कुछ का नाम बदल दिया और पूरी चीज अलग हो गई। उस समय तक सबवर्सन का उपयोग करना जारी रखना ठीक था।

1

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

7

हमने हाल ही में इस प्रवास को काम पर किया था। मैं दृढ़ता से सुझाव देता हूं:

  1. बस वीएसएस से नया कोड जोड़ें, हिट लें कि प्री-एसवीएन इतिहास पुराने वीएसएस भंडार में रहना होगा।
  2. यदि आपका वीएसएस रिपोजिटरी प्रारंभिक कोड डंप के बाद भी उपयोग में है, तो Vendor Branches का उपयोग करके परिवर्तन माइग्रेट करें। हां, मान लीजिए कि आपका वीएसएस रिपोजिटरी एक विक्रेता है और एसवीएन रिपोजिटरी में बदलावों को मर्ज करने के लिए दिनांकित टैग का उपयोग करें।

थोड़ा अधिक विवरण here

2

निम्नलिखित उपकरण काफी अच्छी तरह से काम करता है: http://www.pumacode.org/projects/vss2svn/wiki/RunningTheMigration

यह आयातित भंडार को साफ करने के काम का एक सा लगता है, लेकिन यह इसके लायक हो सकता है यदि आप वास्तव में अपने इतिहास रखना चाहते हैं।

संपादित करें: pumacode.org डोमेन चला गया है, कोड अब https://github.com/irontoby/vss2svn

1

मैं पूरी तरह जॉन गैलोवे के जवाब से सहमत होस्ट की है। मैंने vss2svn का उपयोग करने का भी प्रयास किया है, लेकिन पाया कि आयातित भंडार के साथ बहुत सी समस्याएं थीं और अंत में यह तय किया गया कि इसे साफ करने के लिए आवश्यक प्रयासों के लायक नहीं थे। हमने बस कोड की प्रतिलिपि को विवर्तन में आयात किया है और दुर्लभ अवसर पर वीएसएस पर वापस चला गया है कि कोड के पुराने संस्करण से परामर्श करने की आवश्यकता है।

मेरी पिछली कंपनी में हमने क्लीयरकेस से सबवर्सन में माइग्रेट करने के लिए भी एक ही दृष्टिकोण का उपयोग किया, और मुझे किसी भी अवसर को याद नहीं किया जा सकता है जिसे हमें इतिहास देखने के लिए कभी भी ClearCase में वापस जाने की आवश्यकता है।

सबसे बड़ी समस्या सभी को एक ही समय में नए भंडार में स्विच करने के लिए मिल रही थी, लेकिन एक डेवलपर के रूप में आपको कोई समस्या नहीं होनी चाहिए!

1

हमने कई माइग्रेशन टूल डाउनलोड और परीक्षण किए और मैं Polarion SVNImporter की अनुशंसा करता हूं।

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

8

VSStoSVN का कोडप्लेक्स संस्करण मुझे मिला है सबसे अच्छा है। मेरे पास PumaCode संस्करण के साथ बहुत खराब परिणाम थे, लेकिन यह एक चिकनी दौड़ गया।

http://vss2svn.codeplex.com/

2

मैं बड़ी सफलता के साथ vss2svn इस्तेमाल किया है।

6

मेरी कंपनी एक स्रोत सबवर्सन माइग्रेशन टूल के लिए सुरक्षित विकसित की है: http://www.abstrakti.com/en-US/Products/Krepost

यह उपकरण हर दूसरे उपकरण, जब हम एक ग्राहक के भंडार की ओर पलायन करना पड़ा साथ समस्या हो रही के बाद विकसित किया गया था।

अगर आपको कोई समस्या है तो मुझे बताएं, मुझे आपकी सहायता करने में खुशी होगी।

एरिक।

+1

मैं इसे आजमाने जा रहा हूं। वीएसएस, सैन्स रूपांतरण के हमारे पूर्व त्याग के बावजूद, हमने अभी फैसला किया है कि हम वास्तव में इससे कुछ जानकारी चाहते हैं। उपरोक्त कंपनी Abstrakti.com, वीएसएस को परिवर्तित करने में विशेषज्ञ है, यानी उनके पास वीएसएस के लिए जीआईटी, कैस्टेलम के लिए एक ऐप भी है। बस इस महीने उनके पास एक रखरखाव अद्यतन था! – AnneTheAgile

+1

मैंने इसे पुराने वीएसएस भंडार के साथ करने की कोशिश की, यह एक आकर्षण की तरह काम किया! – tcbrazil

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