मैं किसी मौजूदा प्रोजेक्ट को GitHub में कैसे माइग्रेट करूं?

पूरा किया

यहां, हम एक परियोजना को विरासत संस्करण-नियंत्रण प्रणाली से GitHub में माइग्रेट करने के लिए महत्वपूर्ण विचारों पर चर्चा करते हैं।

GitHub में माइग्रेट क्यों करें?

GitHub के गुणों का गुणगान करने वाले साहित्य के खंड हैं। आपको स्थानांतरित करने के लिए मनाने के लिए यह इस मॉड्यूल के दायरे से परे है। लेकिन, हम उन विषयों के संदर्भ में कुछ प्रमुख लाभों को पुनः प्राप्त कर सकते हैं जिन पर आपको अपने प्रवास की योजना बनाते समय विचार करने की आवश्यकता है।

संस्करण नियंत्रण

GitHub विशेष रूप से Gitका उपयोग करता है, यकीनन सबसे अच्छा संस्करण-नियंत्रण प्रणाली है। हालांकि, गिट अविश्वसनीय रूप से परिष्कृत है और कोड के साथ काम करने के लिए कुछ जटिल परिदृश्य प्रस्तुत कर सकता है जिसके साथ आपकी टीम का अनुभव नहीं हो सकता है। शाखाएं और पुल अनुरोध गिट का उपयोग करने वाले डेवलपर्स के लिए दिन-प्रतिदिन के जीवन का एक मूलभूत हिस्सा हैं, इसलिए यह समझना कि गिटहब पर सफल होने के लिए उन्हें कब और कैसे प्रभावी ढंग से उपयोग करना आवश्यक है। आपकी टीम के लिए सबसे पहले GitHub प्रवाह से परिचित होना सार्थक है ताकि आप दौड़ते हुए मैदान में उतर सकें।

अपना कोड क्लाउड में रखें

प्रोजेक्ट कोड की एक बड़ी मात्रा अभी भी कॉर्पोरेट फ़ायरवॉल के पीछे लीगेसी संस्करण-नियंत्रण सिस्टम में संग्रहीत है। जब आप GitHub में माइग्रेट करते हैं, तो आप अपने कोड को GitHub के क्लाउड प्लेटफ़ॉर्म पर ले जा रहे होते हैं, जहाँ टीम के सदस्य इसे कहीं से भी आसानी से एक्सेस कर सकते हैं। यह माइग्रेशन आपके द्वारा संस्करण नियंत्रण में रखी जाने वाली फ़ाइलों और डेटा के प्रकार के लिए आपकी टीम की नीति की समीक्षा करने का एक अच्छा अवसर प्रदान करता है. एक सर्वोत्तम अभ्यास के रूप में, आपको यह मान लेना चाहिए कि आप GitHub के लिए जो कुछ भी प्रतिबद्ध हैं उससे समझौता किया गया है। API कुंजियों, पासवर्डों या तुलनीय जानकारी वाली अन्य फ़ाइलों जैसे संवेदनशील डेटा को शामिल न करना सुनिश्चित करें.

नोट

GitHub सार्वजनिक और निजी दोनों रिपॉजिटरी प्रदान करता है, साथ ही एक रिपॉजिटरी के विभिन्न हिस्सों के लिए दानेदार अभिगम नियंत्रण भी प्रदान करता है। यह आपको यह नियंत्रित करने देता है कि आपकी परियोजनाएं किसके लिए दृश्यमान हैं, साथ ही साथ दिए गए उपयोगकर्ता क्या कार्य कर सकते हैं।

सहयोग

GitHub समस्याओं, पुल अनुरोधों और कोड समीक्षाओं जैसी सुविधाओं के माध्यम से टीम सहयोग के लिए उत्कृष्ट समर्थन प्रदान करता है। हालाँकि, GitHub प्रवाह उन प्रथाओं से भिन्न हो सकता है जिनके लिए आपकी टीम वर्तमान में आदी है। यह विचार करना एक अच्छा विचार है कि क्या टीम GitHub के अनुकूल होने की योजना बना रही है, अपनी दी गई प्रक्रिया को बनाए रखती है, या माइग्रेशन पूरा करने से पहले बीच में कहीं मिलती है।

यदि आपकी परियोजना एक ओपन-सोर्स प्रोजेक्ट है जो बाहरी योगदानकर्ताओं को अनुमति देती है, तो लाभों को अधिकतम करने के लिए GitHub से बेहतर कोई विकल्प नहीं है।

GitHub में माइग्रेट करना

योजना विचार

GitHub में अपने माइग्रेशन को निष्पादित करने से पहले सबसे महत्वपूर्ण विचार यह है कि क्या आपको अपने स्रोत की वर्तमान स्थिति से परे कुछ भी बनाए रखने की आवश्यकता है। यदि आप केवल अपने वर्तमान स्रोत as-isके साथ एक नई परियोजना शुरू करने से संतुष्ट हैं, तो आपका सबसे अच्छा विकल्प यह है कि इसे एक नई परियोजना की तरह मानें और स्रोत को अपने भंडार में अपलोड करें।

हालाँकि, यदि आप संस्करण-नियंत्रण इतिहास को बनाए रखना चाहते हैं, तो आपको GitHub माइग्रेटर टूलका उपयोग करके आयात करना होगा। विभिन्न संस्करण-नियंत्रण प्लेटफ़ॉर्म के लिए आयात समर्थन के बारे में अधिक जानकारी के लिए, तृतीय-पक्ष संस्करण नियंत्रण सिस्टम से डेटा आयात करना देखें.

गिट डेटा से परे, आप समस्याओं, पुल अनुरोधों या अन्य डेटा को भी बनाए रखना चाह सकते हैं। इन मदों के लिए समर्थन मंच द्वारा भिन्न होता है, और आम तौर पर सामुदायिक परियोजनाओं से उपलब्ध है। यह मॉड्यूल गैर-गिट डेटा माइग्रेट करने को कवर नहीं करता है।

वर्तमान में आपके प्रोजेक्ट में संग्रहीत बाइनरी फ़ाइलों को संभालना

एक सर्वोत्तम अभ्यास के रूप में, GitHub रिपॉजिटरी परियोजनाओं के निर्माण के लिए आवश्यक फाइलों तक सीमित होनी चाहिए। बड़ी बाइनरी फ़ाइलों को करने से बचें जैसे कि कलाकृतियों का निर्माण। स्प्रेडशीट और प्रस्तुतियों जैसी बाइनरी फाइलें उन पोर्टल्स पर ट्रैक किए जाने के लिए बेहतर अनुकूल हैं जो समझते हैं कि उन्हें कैसे परोसा जाए और उन्हें ठीक से कैसे संस्करण किया जाए। यदि आपको बड़ी बाइनरी फ़ाइलों को संस्करण करने की आवश्यकता है, तो Git LFS (बड़ी फ़ाइल संग्रहण) Git एक्सटेंशन का उपयोग करने पर विचार करें।

.gitignore जैसी महत्वपूर्ण Git फ़ाइलें बनाना

Git संस्करण-नियंत्रण फ़ाइल नीतियों को लागू करने में मदद करने के लिए .gitignore फ़ाइलों का समर्थन करता है। ये फ़ाइलें स्रोत-नियंत्रण ट्रैकिंग से फ़ाइलों और फ़ोल्डरों को बाहर करने के लिए उपयोग किए जाने वाले खोज पैटर्न को परिभाषित करती हैं। निम्नलिखित सरल उदाहरण पुनरावर्ती रूप से बिन या बिननामक किसी भी फ़ोल्डर और उनकी सामग्री को स्रोत-नियंत्रण ट्रैकिंग से बाहर करता है:

[Bb]in/

आप फ़ाइलों को अनदेखा करनाके बारे में अधिक जान सकते हैं. आप .gitignoreमें विभिन्न प्लेटफार्मों के लिए दी जाने वाली स्टार्टर फ़ाइलों के संग्रह को भी देख सकते हैं।

रिपॉजिटरी उपभोक्ताओं और योगदानकर्ताओं को विभिन्न नीतियों की व्याख्या करने के लिए GitHub परियोजनाओं में आमतौर पर कई अन्य फाइलें उपयोग की जाती हैं। भले ही आपकी परियोजना निजी है और सीमित दर्शकों तक सीमित है, फिर भी इन नीतियों को स्पष्ट रूप से स्पष्ट करना उपयोगी हो सकता है। हालांकि इनमें से किसी भी फाइल की आवश्यकता नहीं है, हमने यहां कुछ सामान्य लोगों को सूचीबद्ध किया है।

रेती लक्ष्य
README.md निर्देशिका के लिए लैंडिंग पृष्ठ. यह पृष्ठ तब प्रस्तुत किया जाता है जब इसकी निर्देशिका GitHub पर देखी जाती है।
LICENSE.md वह लाइसेंस जिसके तहत कोड प्रदान किया गया है।
CONTRIBUTING.md वर्णन करता है कि उपयोगकर्ताओं को प्रोजेक्ट में कैसे योगदान करना चाहिए, जैसे पुल-अनुरोध अपेक्षाएँ.
SECURITY.md परियोजना के लिए सुरक्षा नीति की व्याख्या करता है. संवेदनशील सुरक्षा-संबंधी कोड या प्रतिक्रिया सबमिट करने के इच्छुक उपयोगकर्ताओं को मार्गदर्शन प्रदान करता है जिन्हें संबोधित करने से पहले सार्वजनिक रूप से प्रकट नहीं किया जाना चाहिए।

के बारे में अधिक जानें स्वस्थ योगदान के लिए अपनी परियोजना की स्थापना.

अपने प्रोजेक्ट को GitHub में आयात करना

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

GitHub रिपॉजिटरी में कोड आयात करने का स्क्रीनशॉट।

GitHub माइग्रेटर टूल बाकी का ख्याल रखता है।

GitHub माइग्रेटर टूल का स्क्रीनशॉट।