मैं svn2git का उपयोग करने के लिए git एक SVN परियोजना विस्थापित करने के लिए कोशिश कर रहा हूँ। हालांकि मुझे सभी इतिहास को संरक्षित करने में समस्याएं हैं। ऐसा लगता है क्योंकि ट्रंक अतीत में स्थानांतरित हो गया था। आदेश मैं उपयोग कर रहा हूँ है:ट्रंक स्थानांतरित होने पर मैं गिट में एसवीएन इतिहास कैसे रखूं?
$ svn2git http://mysvnserver.com/myproject/iPhone/ --no-minimize-url --authors ../authors.txt
लेकिन यह सिर्फ मेरे इतिहास परियोजना वास्तव में 2010 में शुरू कर दिया इस तरह लग रही द्वारा शुरू अनुमानित 2011 के लिए वापस जा देता है:
myproject
trunk
branches
tags
लेकिन 2011 में इसे बदल दिया गया:
myproject
iPhone
trunk
branches
tags
Android
trunk
branches
tags
पुराने ट्रंक और शाखाएं आईफोन निर्देशिका के अंतर्गत गईं। यह कदम तब से शुरू होता है जब यह कदम पूरा हो गया था। यदि मैं आईफोन निर्देशिका में svn log
करता हूं तो मुझे संक्षिप्त इतिहास मिलता है। लेकिन अगर मैं cd trunk; svn log
तो मुझे पूरा इतिहास मिलता है।
मैं कैसे इस इतिहास बाहर निकलने के लिए की पता नहीं है। मेरा विचार किसी भी तरह से ट्रंक के इतिहास के साथ ही गिट रिपोजिटरी बनाना था, जो कि 2010 तक वापस जा रहा था। फिर मैं इसे बाद में अपने मुख्य रेपो में एक शाखा के रूप में खींचूंगा, और इतिहास को सही करने के लिए एक रिबेस करूँगा। लेकिन मेरे पास सिर्फ ट्रंक के लिए इस रेपो को बनाने में कोई भाग्य नहीं है। मैंने कोशिश की है:
$ svn2git http://mysvnserver.com/myproject/ --rootistrunk --authors ../authors.txt
और
$ svn2git http://mysvnserver.com/myproject/ --rootistrunk -no-minimize-url --authors ../authors.txt
किसी भी सफलता नहीं मिली।
मुझे अब समस्या को बहुत अच्छी तरह से याद नहीं किया जा सकता है, लेकिन मैंने इसे उत्तर के रूप में सेट किया क्योंकि यह वास्तव में समस्या को हल करने के तरीके के करीब है। मेरा मानना है कि मैंने अलग-अलग शाखाओं का पूरा समूह बनाया है और फिर इतिहास को देखकर उन्हें एक साथ जोड़ दिया है। –