git merge
(एक निश्चित बिंदु तक) का पता लगाने के लिए सक्षम होना चाहिए नाम बदलता है।
recursive
यह केवल एक 3-रास्ता मर्ज कलन विधि का उपयोग दो सिर को हल कर सकते हैं।
इसके अतिरिक्त यह नामों से जुड़े विलयों का पता लगा सकता है और संभाल सकता है।
यह एक शाखा खींच या विलय करते समय डिफ़ॉल्ट विलय रणनीति है।
लेकिन git-svn
केवल एसवीएन से आयात/निर्यात कर सकता है, विलय नहीं कर सकता है।
और मर्ज मुश्किल है:
चेतावनियां
सरलता के लिए और एक कम सक्षम प्रणाली (SVN) के साथ अंतरसंक्रियता, यह अनुशंसित है कि सभी git svn
उपयोगकर्ताओं क्लोन, लाने और dcommit सीधे एसवीएन सर्वर से, और गिट रिपॉजिटरीज और शाखाओं के बीच सभी गिट क्लोन/पुल/मर्ज/पुश ऑपरेशंस से बचें।
गिट शाखाओं और उपयोगकर्ताओं के बीच कोड का आदान-प्रदान करने की अनुशंसित विधि गिट प्रारूप-पैच और गिट एम है, या सिर्फ एसवीएन भंडार के लिए 'कमजोर' है।
रनिंग गिट मर्ज या गिट पुल को उस शाखा पर अनुशंसित नहीं किया जाता है जिसकी आप योजना बनाते हैं। सबवर्सन किसी भी उचित या उपयोगी फैशन में विलय का प्रतिनिधित्व नहीं करता है; इसलिए सबवर्सन का उपयोग करने वाले उपयोगकर्ता आपके द्वारा किए गए किसी भी विलय को नहीं देख सकते हैं। इसके अलावा, यदि आप एक गिट शाखा से विलय या खींचते हैं जो एसवीएन शाखा का दर्पण है, तो डॉकिट गलत शाखा में प्रतिबद्ध हो सकता है। Git SVN dcommit SVN के शीर्ष पर प्रतिबद्ध करने के लिए हो सकता है कि यह सुनिश्चित करना चाहिए कि सबसे हाल ही में प्रतिबद्ध प्रतिबद्ध
git log --grep=^git-svn-id: --first-parent -1
में नाम का प्रयास करेंगे:
आप मर्ज है, तो निम्नलिखित नियम ध्यान दें जिस शाखा को आप डॉकिट करना चाहते हैं वह विलय का पहला अभिभावक है। कैओस अन्यथा आ जाएगा, खासकर यदि पहला माता-पिता एक ही एसवीएन शाखा पर पुरानी प्रतिबद्धता है।
यह उत्तर देखें: http://stackoverflow.com/questions/2945842/using-git-svn-or-similar-just-to -help-out-with-svn-merge/3585702 # 3585702 –
देखें http://stackoverflow.com/questions/714589/can-git-svn-correctly-populate-svnmergeinfo-properties ... "संपादित करें:" भाग दूसरे उत्तर (स्वीकार किए गए उत्तर नहीं) विशेष रूप से अच्छा –