2010-01-28 21 views
11

के अंदर गिट रेपो का उपयोग कर सकता हूं हम काम पर सभी क्लाइंट प्रोजेक्ट्स को सबवर्जन रिपोजिटरीज में रखते हैं और भविष्य में इसे बदलने के लिए नहीं जा रहे हैं। हमारी कई परियोजनाएं एक ही प्लगइन/मॉड्यूल का उपयोग करती हैं और हम इनमें से कुछ स्रोत भी खोलते हैं और उन्हें अपने गिटब खातों पर साझा करते हैं।क्या मैं svn repos

मुझे क्या करना चाहते हैं:

  1. तोड़फोड़ में सभी कोड के साथ एक ग्राहक परियोजना को बनाए रखने
  2. किसी भी देव परियोजना के लिए किसी भी दूरस्थ/GitHub रेपो से plugins/मॉड्यूल जोड़ने
  3. किसी भी देव को कोड GitHub से खींचा GitHub रेपोस में किए गए परिवर्तनों को खींचने और उन्हें परियोजना की SVN रेपो के लिए (एक परियोजना पर परियोजना के आधार द्वारा, सभी नहीं एक ही बार में) जोड़ने के लिए
  4. परियोजना विशिष्ट तोड़ मरोड़ करने में सक्षम हो सक्षम हो रिपो जिन्हें वापस जिथूब पर धक्का नहीं दिया जाता है या अबी को प्रभावित नहीं किया जाता है github
  5. आवश्यक एसएसएच कुंजी वाले देवताओं को जिथब पर कोड में स्थानीय परिवर्तनों को जिथब पर वापस धक्का दे सकता है ताकि किसी भी बग फिक्स या नई विशेषताएं जो प्लगइन/मॉड्यूल का उपयोग करके सभी परियोजनाओं के लिए लाभकारी हों, उन्हें खींच सकें नीचे भी

क्या यह संभव है? यदि हां, तो कैसे?

मैं का एक संयोजन के साथ ऐसा कर सकते हैं:

  1. विक्रेता बाहरी GitHub रेपोस से प्रत्येक के लिए एक विक्रेता के साथ SVN रेपोस में शाखाओं GitHub पर फिर से प्रयोग करने योग्य कोड की जुदाई रखने के लिए और बदलाव परियोजना के लिए कोड।
  2. svn repo में विक्रेता शाखा में .git फ़ोल्डर को करने के लिए किसी को भी नवीनतम परिवर्तन खींचने में सक्षम बनाता है।
+0

पीएस मैं svn के साथ काफी परिचित हूं, लेकिन गिट के साथ बहुत नहीं - बस क्लोन करने, जोड़ने, प्रतिबद्ध करने और पुश करने के बारे में – neilcrookes

उत्तर

2

मुझे विश्वास है कि क्या आप के लिए पूछ रहे हैं Git-SVN (http://git.or.cz/course/svn.html) जो आप तोड़फोड़ की चोटी पर Git परत करने की अनुमति देता का उपयोग कर संभव है के सबसे। जब आप महसूस करते हैं कि यह एक अच्छा समय है और सामान्य गिट फैशन में उस गिट का उपयोग करने के बीच आप svn भंडार में वापस धक्का दे सकते हैं।

+0

विक्रेता ब्रांचिंग चीज़ के बारे में क्या? क्या आप जानते हैं कि क्या आप उस तरह की चीज़ को गिट-एसवीएन के साथ प्राप्त कर सकते हैं? – neilcrookes

2

जिस तरह से आप का सुझाव में .git और .svn खजाने के संयोजन कोई समस्या नहीं होनी चाहिए।

मैं हर Git इस तरह से इस्तेमाल रेपो के लिए .gitignore फाइल करने के लिए .svn जोड़ने का सुझाव देते।

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

10

बल्कि amusingly, github added Subversion support एक गैर अप्रैल-फूल जोक के रूप। दूसरे शब्दों में, ने अप्रैल फूलों के मजाक की तरह देखा, लेकिन यह पूरी तरह कार्यात्मक है!

आप सबवर्सन यूआरएल http://github.com/USER/PROJECT का उपयोग करते हुए एक एसवीएन के रूप में एक गिट रिपोजिटरी जोड़ सकते हैं।

+1

गिटहब ने अपने एसवीएन समर्थन को अपडेट किया, [इसके बारे में सब कुछ पढ़ें] (https://github.com/blog/966-improved-subversion-client-support)। –

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