व्यायाम - अपनी परियोजना को GitHub पर अपलोड करें

पूरा किया

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

GitHub आयातक के बारे में

यदि आपके पास सबवर्जन, मर्क्यूरियल, टीम फाउंडेशन वर्जन कंट्रोल (TFVC), या किसी अन्य Git रिपॉजिटरी में स्रोत कोड है, तो आप इसे GitHub आयातक का उपयोग करके GitHub में ले जा सकते हैं। GitHub आयातक एक ऐसा उपकरण है जो आपके लिए GitHub में कमिट और संशोधन इतिहास सहित स्रोत कोड रिपॉजिटरी को जल्दी से आयात करता है।

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

आयात कार्रवाई भ्रष्टकारिता फुर्तीला टीएफवीसी गिट
दूरस्थ भंडार के साथ प्रमाणित करें X X X X
प्रतिबद्ध लेखक एट्रिब्यूशन अपडेट करें X X X
बड़ी फ़ाइलों को Git लार्ज फ़ाइल स्टोरेज में ले जाएं X X X
अपने रिपॉजिटरी से बड़ी फ़ाइलें निकालें X X X

GitHub आयातक के साथ एक भंडार आयात करना

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

यदि आप आयात के दौरान लेखकों के GitHub उपयोगकर्ता खातों में अपने भंडार में कमिट का मिलान करना चाहते हैं। सबसे पहले, सुनिश्चित करें कि आयात शुरू करने से पहले आपके भंडार के प्रत्येक योगदानकर्ता के पास एक GitHub खाता है।

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

किसी संग्रह को आयात करने के लिए, निम्न चरणों का पालन करें:

  1. किसी भी पृष्ठ के ऊपरी-दाएँ कोने में, +का चयन करें और फिर रिपॉसिटरी आयात करेंका चयन करें.

    आयात रिपॉजिटरी बटन का स्क्रीनशॉट।

  2. "आपके पुराने रिपॉजिटरी का क्लोन URL" के अंतर्गत, उस प्रोजेक्ट का URL टाइप करें जिसे आप आयात करना चाहते हैं।

    पुराने रिपॉजिटरी URL टेक्स्टबॉक्स का स्क्रीनशॉट।

  3. रिपॉजिटरी के मालिक होने के लिए अपना उपयोगकर्ता खाता या संगठन चुनें, फिर GitHub पर रिपॉजिटरी के लिए एक नाम टाइप करें।

    नए आयात रिपॉज़िटरी स्वामी नाम का स्क्रीनशॉट.

  4. निर्दिष्ट करें कि नया भंडार सार्वजनिक या निजी होना चाहिए या नहीं। ज़्यादा जानकारी के लिए, सेटिंग रिपॉज़िटरी विजिबिलिटी देखें.

    नए रिपॉजिटरी सार्वजनिक या निजी विकल्पों का स्क्रीनशॉट।

  5. आपके द्वारा दर्ज की गई जानकारी की समीक्षा करें, फिर आयातशुरू करें चुनें.

    एक नए रिपॉज़िटरी आयात के लिए आयात शुरू करें बटन का स्क्रीनशॉट.

  6. यदि आपका पुराना प्रोजेक्ट पासवर्ड द्वारा सुरक्षित था, तो उस प्रोजेक्ट के लिए अपनी साइन-इन जानकारी टाइप करें, फिर सबमिट करेंचुनें।

    अपने पुराने रिपॉजिटरी क्रेडेंशियल आयातक को इनपुट करने के लिए स्थान का स्क्रीनशॉट।

  7. यदि आपके पुराने प्रोजेक्ट के क्लोन URL पर कई प्रोजेक्ट होस्ट किए गए हैं, तो वह प्रोजेक्ट चुनें जिसे आप आयात करना चाहते हैं, फिर सबमिटचुनें।

    एक ही URL पर पाए गए प्रोजेक्ट के चयन का स्क्रीनशॉट. परियोजना आयातक।

  8. यदि आपके प्रोजेक्ट में 100 एमबी से बड़ी फ़ाइलें हैं, तो चुनें कि गिट लार्ज फाइल स्टोरेजका उपयोग करके बड़ी फ़ाइलों को आयात करना है या नहीं, फिर जारी रखेंचुनें।

    गिट लार्ज फाइल स्टोरेज आयातक के लिए उपयुक्त फाइलों का स्क्रीनशॉट।

जब रिपॉजिटरी पूरी तरह आयात हो जाती है, तो आपको एक ईमेल प्राप्त होता है।

GitHub आयातक के साथ प्रतिबद्ध लेखक एट्रिब्यूशन अपडेट करना

आयात के दौरान, आप commit author के GitHub खाते के साथ अपने रिपॉजिटरी में मौजूद commits का मिलान कर सकते हैं. GitHub आयातक उन GitHub उपयोगकर्ताओं की तलाश करता है जिनके ईमेल पते आपके द्वारा आयात किए जा रहे रिपॉजिटरी में कमिट के लेखकों से मेल खाते हैं। फिर आप किसी कमिट को उसके लेखक से उनके ईमेल पते या लेखक के GitHub उपयोगकर्ता नाम का उपयोग करके कनेक्ट कर सकते हैं।

प्रतिबद्ध लेखकों को अपडेट करना

प्रतिबद्ध लेखक को अद्यतन करने के लिए, निम्न चरणों का पालन करें:

  1. अपना रिपॉजिटरी आयात करने के बाद, आयात स्थिति पृष्ठ पर, लेखकों से मेलका चयन करें।

    मिलान लेखक बटन का स्क्रीनशॉट.

  2. उस लेखक के आगे, जिसकी जानकारी आप अपडेट करना चाहते हैं, कनेक्ट करेंचुनें.

    कनेक्ट कमिट लेखक प्रक्रिया का स्क्रीनशॉट।

  3. लेखक का ईमेल पता या GitHub उपयोगकर्ता नाम टाइप करें, फिर Enter दबाएँ।

सार्वजनिक ईमेल पते वाले GitHub उपयोगकर्ता को श्रेय देना

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

सार्वजनिक ईमेल पते के बिना GitHub उपयोगकर्ता को श्रेय देना

यदि आपके आयातित रिपॉजिटरी में कमिट का लेखक अपने GitHub प्रोफ़ाइल पर एक सार्वजनिक ईमेल पता सेट नहीं करता है, या अपने प्रतिबद्ध ईमेल पते को निजीके रूप में सेट करता है। फिर, GitHub आयातक अपने GitHub खाते के साथ प्रतिबद्ध से जुड़े ईमेल पते से मेल नहीं खा सकता है।

प्रतिबद्ध लेखक उनके ई-मेल पते को निजी के रूप में सेट करके इस समस्या को हल कर सकते हैं। उनके कमिट को तब <username>@users.noreply.github.comके लिए जिम्मेदार ठहराया जाता है, और आयातित कमिट उनके GitHub खाते से जुड़े होते हैं।

एट्रिब्यूटिंग एक ईमेल पते का उपयोग करके प्रतिबद्ध है

यदि लेखक का ईमेल पता उनके GitHub खाते से संबद्ध नहीं है, तो वे आयात के बाद अपने खाते में पता जोड़ सकते हैं, और कमिट को सही ढंग से जिम्मेदार ठहराया जाएगा।

यदि लेखक के पास GitHub खाता नहीं है, तो GitHub आयातक अपने कमिट को कमिट से जुड़े ईमेल पते पर विशेषता देता है।

कमांड लाइन का उपयोग करके GitHub रिपॉजिटरी आयात करना

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

शुरू करने से पहले, सुनिश्चित करें कि आप जानते हैं:

  • आपका GitHub उपयोगकर्ता नाम
  • बाहरी रिपॉजिटरी के लिए क्लोन URL, जैसे https://external-host.com/user/repo.git या git://external-host.com/user/repo.git (शायद user@ डोमेन नाम के सामने एक external-host.com के साथ)

प्रदर्शन के प्रयोजनों के लिए, हम उपयोग करते हैं:

  • एक्सटी-यूज़र नाम का एक बाहरी खाता
  • https://external-host.com नामक एक बाहरी गिट होस्ट
  • एक GitHub व्यक्तिगत उपयोगकर्ता खाता जिसका नाम ghuser है
  • GitHub.com पर एक भंडार जिसका नाम repo.git है

अपने बाहरी भंडार को आयात करने के लिए इन चरणों का पालन करें:

  1. GitHub पर एक नया रिपॉजिटरी बनाएं। आप अपने बाहरी गिट भंडार को इस नए भंडार में आयात करते हैं।

  2. बाहरी क्लोन URL का उपयोग करके रिपॉजिटरी का "नंगे" क्लोन बनाएं। आदेश पंक्ति पर, निम्न आदेश दर्ज करें. यह कमांड डेटा की एक पूरी प्रतिलिपि बनाता है, लेकिन फ़ाइलों को संपादित करने के लिए एक कार्यशील निर्देशिका के बिना, और सभी पुराने डेटा का एक स्वच्छ, ताज़ा निर्यात सुनिश्चित करता है।

    $ git clone --bare https://external-host.com/ext-user/repo.git
    #Makes a bare clone of the external repository in a local directory 
    
  3. "मिरर" विकल्प का उपयोग करके स्थानीय रूप से क्लोन किए गए रिपॉजिटरी को GitHub पर पुश करें, जो यह सुनिश्चित करता है कि सभी संदर्भ, जैसे शाखाएं और टैग, आयातित रिपॉजिटरी में कॉपी किए गए हैं।

    $ cd repo.git
    $ git push --mirror https://github.com/ghuser/repo.git
    #Pushes the mirror to the new repository on GitHub.com 
    
  4. अस्थायी स्थानीय भंडार निकालें।

    $ cd ..
    $ rm -rf repo.git 
    

GitHub में स्थानीय रूप से होस्ट किए गए कोड को जोड़ना

यदि आपके पास मौजूदा स्रोत कोड या रिपॉजिटरी आपके कंप्यूटर या निजी नेटवर्क पर स्थानीय रूप से संग्रहीत हैं, तो आप टर्मिनल में कमांड टाइप करके उन्हें GitHub में जोड़ सकते हैं। या तो सीधे Git कमांड टाइप करके, या GitHub CLI का उपयोग करके।

GitHub CLI आपके कंप्यूटर की कमांड लाइन से GitHub का उपयोग करने के लिए एक ओपन सोर्स टूल है। GitHub CLI कमांड लाइन का उपयोग करके मौजूदा प्रोजेक्ट को GitHub में जोड़ने की प्रक्रिया को सरल बना सकता है। GitHub CLI के बारे में अधिक जानने के लिए, GitHub CLI के बारे में देखें।

GitHub CLI के साथ GitHub में एक स्थानीय भंडार जोड़ना

GitHub CLI के साथ स्थानीय रिपॉजिटरी जोड़ने के लिए इन चरणों का पालन करें:

  1. कमांड लाइन में, अपने प्रोजेक्ट की रूट डायरेक्टरी पर नेविगेट करें।

  2. स्थानीय निर्देशिका को गिट रिपॉजिटरी के रूप में प्रारंभ करें।

    git init -b main
    
  3. स्टेज और अपने प्रोजेक्ट में सभी फाइलों को प्रतिबद्ध करें।

    git add . && git commit -m "initial commit"
    
  4. GitHub पर अपने प्रोजेक्ट के लिए रिपॉजिटरी बनाने के लिए, gh repo create subcommandका उपयोग करें। संकेत मिलने पर, मौजूदा स्थानीय रिपॉजिटरी को GitHub पर पुश चुनें और अपने रिपॉजिटरी के लिए वांछित नाम दर्ज करें। यदि आप चाहते हैं कि आपका प्रोजेक्ट आपके उपयोगकर्ता खाते के बजाय किसी संगठन से संबंधित हो, तो organization-name/project-nameके साथ संगठन का नाम और प्रोजेक्ट नाम निर्दिष्ट करें.

  5. इंटरैक्टिव संकेतों का पालन करें। रिमोट जोड़ने और रिपॉजिटरी को पुश करने के लिए, पुष्टि करें हाँ जब रिमोट जोड़ने और कमिट को वर्तमान शाखा में पुश करने के लिए कहा जाए।

  6. वैकल्पिक रूप से, सभी संकेतों को छोड़ने के लिए, --source ध्वज के साथ भंडार को पथ की आपूर्ति करें और एक दृश्यता ध्वज (--public, --private, या --internal) पास करें। उदाहरण के लिए, gh repo create --source=. --public. --remote ध्वज के साथ कोई रिमोट निर्दिष्ट करें. अपनी प्रतिबद्धताओं को आगे बढ़ाने के लिए, --push ध्वज को पास करें। संभावित तर्कों के बारे में अधिक जानकारी के लिए, GitHub CLI मैनुअल देखें।

गिट का उपयोग करके गिटहब में एक स्थानीय भंडार जोड़ना

गिट का उपयोग करके स्थानीय भंडार जोड़ने के लिए इन चरणों का पालन करें:

  1. GitHub.com पर एक नया रिपॉजिटरी बनाएं। त्रुटियों से बचने के लिए, README, लाइसेंस, या gitignore filesके साथ नए भंडार को प्रारंभ न करें। अपने प्रोजेक्ट को GitHub पर धकेलने के बाद आप इन फ़ाइलों को जोड़ सकते हैं।

    नए भंडार निर्माण का स्क्रीनशॉट।

  2. गिट बैश खोलें।

  3. वर्तमान कार्यशील निर्देशिका को अपने स्थानीय प्रोजेक्ट में परिवर्तित करें.

  4. स्थानीय निर्देशिका को गिट रिपॉजिटरी के रूप में प्रारंभ करें।

    $ git init -b main
    
  5. फ़ाइलों को अपने नए स्थानीय भंडार में जोड़ें। यह आदेश उन्हें पहले कमिट के लिए भी चरणबद्ध करता है।

    $ git add .
    # Adds the files in the local repository and stages them for commit. To unstage a file, use 'git reset HEAD YOUR-FILE'.
    
  6. उन फ़ाइलों को प्रतिबद्ध करें जो आपके स्थानीय भंडार में मंचित हैं।

    $ git commit -m "First commit"
    # Commits the tracked changes and prepares them to be pushed to a remote repository. To remove this commit and modify the file, use 'git reset --soft HEAD~1' and commit and add the file again.
    
  7. GitHub.com के त्वरित सेटअप पृष्ठ पर अपने रिपॉजिटरी के शीर्ष पर, रिमोट रिपॉजिटरी URL की प्रतिलिपि बनाने के लिए कॉपी बटन चुनें।

    स्क्रीनशॉट कॉपी रिमोट रिपॉजिटरी यूआरएल क्विक सेटअप

  8. कमांड प्रॉम्प्ट में, दूरस्थ भंडारके लिए URL जोड़ें। आपके स्थानीय भंडार को इस स्थान पर धकेल दिया गया है।

    $ git remote add origin <REMOTE_URL> 
    # Sets the new remote
    $ git remote -v
    # Verifies the new remote URL
    
  9. अपने स्थानीय भंडार में परिवर्तनों को GitHub.com पर पुश करें।

    $ git push origin main
    # Pushes the changes in your local repository up to the remote repository you specified as the origin
    

स्रोत कोड माइग्रेशन उपकरण

आप अपनी परियोजनाओं को GitHub में स्थानांतरित करने के लिए बाहरी उपकरणों का उपयोग कर सकते हैं। हम सबवर्जन, मर्क्यूरियल, टीम फाउंडेशन वर्जन कंट्रोल (TFVC), या किसी अन्य Git रिपॉजिटरी से प्रोजेक्ट आयात करने के लिए GitHub Importer का उपयोग करने की सलाह देते हैं। आप अपने प्रोजेक्ट को गिट में बदलने के लिए इन बाहरी टूल का भी उपयोग कर सकते हैं।

सबवर्जन से आयात करना

एक विशिष्ट सबवर्सन वातावरण में, कई परियोजनाओं को एक रूट भंडार में संग्रहीत किया जाता है। GitHub पर, इनमें से प्रत्येक प्रोजेक्ट आमतौर पर उपयोगकर्ता खाते या संगठन के लिए एक अलग Git रिपॉजिटरी में मैप करता है। हम आपके सबवर्सन रिपॉजिटरी के प्रत्येक भाग को एक अलग GitHub रिपॉजिटरी में आयात करने का सुझाव देते हैं यदि:

  • सहयोगियों को परियोजना के उस हिस्से को अन्य भागों से अलग जांचने या प्रतिबद्ध करने की आवश्यकता है
  • आप चाहते हैं कि अलग-अलग हिस्सों की अपनी एक्सेस अनुमतियां हों

हम सबवर्सन रिपॉजिटरी को गिट में बदलने के लिए इन उपकरणों की सलाह देते हैं:

मर्क्यूरियल से आयात करना

हम मर्क्यूरियल रिपॉजिटरी को गिट में बदलने के लिए एचजी-फास्ट-एक्सपोर्ट की सलाह देते हैं।

TFVC से आयात करना

हम अनुशंसा करते हैं कि tfs TFVC और Git के बीच परिवर्तनों को स्थानांतरित करने के लिए git-tfs करें।

TFVC (एक केंद्रीकृत संस्करण नियंत्रण प्रणाली) से Git में जाने के बारे में अधिक जानकारी के लिए, केंद्रीयकृत संस्करण नियंत्रणसे Git में माइग्रेट करें देखें।