2013-03-26 7 views
5

से विशिष्ट शाखा वहाँ एक अधिकारी ने रेपो बनाए रखा शाखाओं B1 साथ O कहा जाता है, B2 & B3 है मान लीजिए।forking केवल एक Github रिपॉजिटरी

एक उपयोगकर्ता, जिसने इसे अपने गिथब खाते में फोर्क किया है, ने खुद को एक और शाखा बनाई है जिसे B4 कहा जाता है और सार्वजनिक रूप से उपलब्ध है।

मैंने भी एक ही आधिकारिक रेपो को फोर्क किया है, लेकिन मैं उस उपयोगकर्ता की B4 शाखा को अपनी मूल प्रति को प्रभावित किए बिना भी फोर्क करना चाहता हूं।

मैं पूरे आधिकारिक रेपो को फिर से नहीं फेंक सकता क्योंकि मैंने अपने लिए कई कस्टम शाखाएं बनाई हैं।

तो, मैं अपने गिथब रेपो पर एक विशेष शाखा कैसे बना सकता हूं?

उत्तर

3

आप अपनी शाखा को अपने स्थानीय गिट रेपो में खींच सकते हैं, और फिर इसे अपने गिटहब होस्टेड रेपो में दबा सकते हैं।

पहले, इस अन्य उपयोगकर्ताओं के GitHub पेज

git remote add other-user http://github.com/otheruser/repo 

को एक दूरस्थ जोड़ने फिर अपने रेपो में उस शाखा की एक स्थानीय चेकआउट बनाते हैं।

git checkout -b B4 other-user/B4 

अंत में, उस शाखा को गिटहब पर होस्ट किए गए अपने रेपो पर दबाएं।

git push origin B4:B4 
+0

यह एक घातक त्रुटि दे रहा है। उपयोगकर्ता के रेपो का यूआरएल "उपयोगकर्ता/रेपो/पेड़/एसजी/सर्च" जैसा कुछ है। मैंने केवल इस पथ को रिमोट में जोड़ा है। – xan

+0

रिमोट जोड़ने के दौरान आपके द्वारा प्रदान किया गया यूआरएल वास्तव में क्या है? – keelerm

+0

http://github.com/user/repo/tree/sg/search – xan

3

अपने कार्यशील निर्देशिका का एक "दूरस्थ भंडार" के रूप में है कि उपयोगकर्ता के भंडार जोड़ें:

git remote add someuser git://github.com/someuser/somerepo.git 

एक बार जब आप यह कर लें, आप उस उपयोगकर्ता की रिपोजिटरी से परिवर्तन लाने की जरूरत है। बाद में, आप किसी भी समय अपने स्थानीय रेपो में किसी और चीज को प्रभावित किए बिना ऐसा कर सकते हैं।

git fetch someuser 

और शाखा है, जो उपयोगकर्ता के B4 अपनी खुद की B5 में:

git checkout -b B5 someuser/B4 

है यही कारण है, एक नई शाखा (-b) बनाने B5 कहा जाता है, प्रारंभिक बिंदु के रूप someuser/B4 का उपयोग कर।

+0

अब तक मैंने जो भी निर्देश दिया है, मैंने किया है। 'गिट शाखा -आर 'करते समय यह रिमोट'/someuser' के तहत रेपो दिखाता है। अब, मैं इसे अपने गिथब रेपो में कैसे दबा सकता हूं? – xan

+0

अपने गीथब रेपो के लिए रिमोट नाम खोजें। यह शायद 'मूल' है, लेकिन आप 'git remote -v' के साथ दोबारा जांच कर सकते हैं। फिर 'गिट पुश उत्पत्ति बी 5' चलाएं। – legoscia