मैं GitHub में एक निश्चित परियोजना में योगदान देना चाहूंगा । क्या मुझे इसे फोर्क करना चाहिए ? यह शाखा ? क्या अनुशंसित है और इसे कैसे करना है?
मैं GitHub में एक निश्चित परियोजना में योगदान देना चाहूंगा । क्या मुझे इसे फोर्क करना चाहिए ? यह शाखा ? क्या अनुशंसित है और इसे कैसे करना है?
जवाबों:
आदर्श रूप से आप:
यदि यह एक नया फीचर अनुरोध है, तो पहले कोडिंग शुरू न करें। नई सुविधा पर चर्चा करने के लिए एक मुद्दा पोस्ट करना याद रखें।
यदि सुविधा पर अच्छी तरह से चर्चा की गई है और कुछ +1 हैं या प्रोजेक्ट के मालिक ने इसे अनुमोदित किया है, तो समस्या को स्वयं को असाइन करें, फिर ऊपर दिए गए चरणों को करें।
कुछ प्रोजेक्ट पुल अनुरोध प्रणाली का उपयोग नहीं करेंगे। अपने कोड को प्रोजेक्ट में वापस लाने के लिए सबसे अच्छे तरीके से लेखक या मेलिंग सूची की जाँच करें।
यान के उत्तर को जोड़ने के लिए , एक बार जब आप एक परियोजना को आगे बढ़ाते हैं, तो आप अपनी इच्छित किसी भी शाखा में विकास कर सकते हैं (एक नया, या मूल परियोजना से एक)
स्मरण में रखना:
origin
', क्योंकि origin
आपका अपना रेपो होगा, कांटे का परिणाम)git checkout master;
git pull;
वही विकसित करने के लिए (जहाँ मेरी सुविधा शाखा को पहले विलय कर दिया गया था) अंतर मैं सोच सकता हूँ के बाद, "पुल बनाम पुल --rebase" और "मर्ज बनाम रिबेस" पढ़ने के बाद सिर्फ फ्लैट इतिहास है। कुछ और गहरा?
यान और VonC के उत्तरों को जोड़ने के लिए, यह खुद github से एक अच्छा संसाधन है: http://help.github.com/forking/
"सहयोग" शीर्षक के तहत सही साइडबार पर भी ध्यान देना सुनिश्चित करें।
यहां एक महान रेलसेकंड वीडियो है जो आपको इस प्रक्रिया के माध्यम से चलता है। इसमें कई अच्छी युक्तियां भी हैं जैसे कि यह निर्धारित करने के लिए कि परीक्षण, सबमॉड्यूल्स, आदि का उपयोग करते हुए आप किस शाखा पर काम करना चाहते हैं।
जबकि यह स्क्रीनकास्ट मुख्य रूप से रेल डेवलपर्स पर केंद्रित है, अधिकांश जानकारी किसी भी ओपन सोर्स प्रोजेक्ट में योगदान करने के लिए मान्य है।
गिथब के पास एक परियोजना में सहयोग करने के कई तरीके हैं। सबसे अधिक परियोजना का उपयोग मॉडल एक पुल अनुरोध मॉडल है। मैंने लोगों को अपना पहला GitHub पुल अनुरोध बनाने में मदद करने के लिए एक परियोजना शुरू की है। आप यहां अपना पहला पीआर बनाने के लिए हाथों पर ट्यूटोरियल कर सकते हैं
वर्कफ़्लो के रूप में सरल है
git push origin branch-name
Compare and pull request
बटन देखने के लिए गिटहब पर अपने कांटे पर जाएंlornajane में एक ब्लॉग पोस्ट है जो प्रक्रिया को अच्छी तरह से समझाती है: http://www.lornajane.net/posts/2010/contributing-to-projects-on-github
मैं निम्नलिखित वर्कफ़्लो का सुझाव दूंगा:
क्लोन (कमांड लाइन में)
git clone <url-from-your-workspace>
निर्देशिका दर्ज करें, जो अभी बनाई गई है, और एक शाखा बनाएं
cd <directory>
git checkout -b <branchname>
अब अपने बदलाव करें
आप प्रत्येक परिवर्तन के बाद एक या अधिक कमिट बना सकते हैं:
commit -a
जब हो जाए, तो अपने बदलावों को आगे बढ़ाएं
git push origin <branch>
अपनी कमांड लाइन में, आपको पीआर बनाने के लिए एक URL देखना चाहिए । URL पर जाएं और PR बनाने के लिए बटन पर क्लिक करें।
यदि नहीं, तो ब्राउज़र में रिपॉजिटरी पर जाएं और यह आपको पुल अनुरोध बनाने के लिए एक बटन प्रदान करेगा
बस।
इसलिए, मूल रूप से, आपने अपने कार्यक्षेत्र के लिए भंडार को छोड़ दिया, एक नई शाखा बनाई और उस नई शाखा को आगे बढ़ाया।
यदि आप बाद में एक ही क्लोन रेपो से अधिक पीआर बनाते हैं, तो आपको दूसरे पीआर के लिए एक और शाखा बनाने से पहले सिंक्रनाइज़ (मूल भंडार से नवीनतम परिवर्तन प्राप्त करना चाहिए) करना चाहिए:
git checkout master
git remote add upstream <url-of-original-repo>
git pull upstream master
ये सुझाव यहां आपको एक पीआर में काम करने की परेशानी से बचाने के लिए हैं जो विलय नहीं होगा। यदि परियोजना में गतिविधि है और पीआर विलय हो जाता है, तो यह एक अच्छा संकेत है। यदि योगदान दिशानिर्देश हैं, तो उनका पालन करें।
हमेशा विनम्र रहें। याद रखें, परियोजना के अनुरक्षक आपके पीआर को मर्ज करने के लिए किसी भी तरह से बाध्य नहीं हैं। क्या आपके पास प्रोजेक्ट में जोड़ने के लिए कुछ मूल्यवान है?