Jump to content
MediaWiki

गिट से डाउनलोड करें

From mediawiki.org
This page is a translated version of the page Download from Git and the translation is 100% complete.

गिट एक वितरित संस्करण नियंत्रण प्रणाली है। इससे आप स्रोत कोड के नवीनतम संस्करण को सभी शाखाओं और टैग किए गए प्रकाशनों के विकल्प के साथ डाउनलोड कर सकते हैं।

अगर आप एक विकासक हैं और पैच प्रस्तुत करना चाहते हैं तो आपको गिट से डाउनलोड करना चाहिए।

अगर आप विकसित नहीं करना चाहते हैं और बस मीडियाविकि एक्सटेंशनों को स्थापित ही करना चाहते हैं, तो इसके बजाय स्थिर tarball प्रकाशन ही डाउनलोड करें

और जानकारी, विशेषतः योगदान करने के बारे में, के लिए गिट देखें। नीचे कुछ सामान्य कार्यों की विधियाँ हैं।

पूर्व अपेक्षित गुण

गिट का इस्तेमाल करने से पहले आपको इसे स्थापित करना होगा। आपके ऑपरेटिंग सिस्टम के अनुसार गिट प्राप्त करने के कई तरीके हैं। Gerrit/Tutorial#Set up Git का पालन करें, या फिर अपने पसंदीदा खोज इंजन का इस्तेमाल करें।

यह अनुशंसित है कि आप तृतीय-पक्ष लाइब्रेरियों को डाउनलोड करने और स्थापित करने के लिए Composer स्थापित कर लें, लेकिन यह अनिवार्य नहीं है।

मीडियाविकि डाउनलोड करने के लिए गिट का उपयोग करना

डाउनलोड करें

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

पहला कदम है मीडियाविकि मूल भंडार को क्लोन करना। इसमें कुछ समय लगेगा।

विकास के लिए डाउनलोड करें

इस प्रक्रिया की एक लघु मार्गदर्शिका के लिए Local development quickstart देखें।

मीडियाविकि के नवीनतम विकास संस्करण को 'master' शाखा में ट्रैक किया जाता है।

पहले सुनिश्चित करें कि आपने एक विकासक खाता बनाया है, ताकि आपको एक SSH सदस्यनाम मिल पाए।

उसके बाद भंडार को क्लोन करने के लिए किसी टर्मिनल विंडो में निम्न कमांड दर्ज करें:

gitclonehttps://gerrit.wikimedia.org/r/mediawiki/core.gitmediawiki

यह पूरे मीडियाविकि भंडार को master शाखा से सिंक्रोनाइज़ करके mediawiki नामक सबडिरेक्ट्री में क्लोन कर लेता है।

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

एक स्थिर शाखा डाउनलोड करें

अगर आप सॉफ़्टवेयर पैच को विकसित नहीं करना चाहते हैं मगर स्थिर प्रकाशन शाखा 1.46 को गुमनाम होकर क्लोन करना चाहते हैं तो इस कमांड का इस्तेमाल करें:

gitclonehttps://gerrit.wikimedia.org/r/mediawiki/core.git--branchREL1_46mediawiki

अगर आपके इंटरनेट कनेक्शन की गति धीमी है और आप क्लोन होने वाले संस्करणों की संख्या को कम करना चाहते हैं, तो git clone कमांड में --depth=1 जोड़ें।

मीडियाविकि टैग्स (स्थिर संस्करण)

वैकल्पिक रूप से, मीडियाविकि के विशिष्ट स्थिर संस्करणों को 'टैग्स' की मदद से ट्रैक किया जाता है। ये tarball प्रकाशनों से अलग होते हैं। वर्तमान में, ये हैं 1.46.0 (स्थिर), 1.43.9 (LTS) और 1.43.9 (विरासती LTS)।

आप इसकी मदद से उपलब्ध टैग्स देख सकते हैं:

gittag-l|sort-V

विशिष्ट टैग्स, जैसे नवीनतम स्थिर प्रकाशन, का उपयोग करने के लिए:

gitcheckout1.46.0

गिट सबमॉड्यूल्स को अपडेट करें

इन शाखाओं में vendor/ डिरेक्ट्री के प्रचलित एक्सटेंशनों और स्किन्स के लिए कई गिट सबमॉड्यूल्स हैं। master शाखा में ये नहीं हैं। सबमॉड्यूल्स को अपडेट करने के लिए चलाएँ:

cdmediawiki
gitsubmoduleupdate--init--recursive

बाहरी लाइब्रेरियाँ प्राप्त करें

मीडियाविकि बाहरी PHP लाइब्रेरियों को प्रबंधित करने के लिए Composer का इस्तेमाल करता है, जो सभी आपकी मीडियाविकि डिरेक्ट्री के vendor/ डिरेक्ट्री में चले जाते हैं।

इन आवश्यक लाइब्रेरियों को स्थापित करने के लिए आपके पास एक विकल्प है:

  • composer PHAR को डाउनलोड करके स्थापित करें, वैकल्पिक रूप से अपने OS के अनुदेशों के अनुसार composer.phar का नाम बदलें, और फिर अपने मीडियाविकि डिरेक्ट्री से composer update --no-dev चलाएँ। यह अनुशंसित विकल्प है।
    • अगर डिफ़ॉल्ट PHP CLI संस्करण वेब सर्वर के PHP संस्करण से मेल नहीं खाता हो तो इसे php7.4 composer.phar update --no-dev की मदद से निर्दिष्ट करें।
  • अगर आप Composer का उपयोग नहीं करना चाहते हैं, या अगर आप WMF उत्पादन क्लस्टर पर इस्तेमाल होने वाले वेंडर लाइब्रेरियों के समुच्चय का ही उपयोग करना चाहते हैं, तो आप इसके बजाय अपनी मीडियाविकि स्थापना के मूल फोल्डर में एक vendor/ डिरेक्ट्री बना सकते हैं:
    git clone https://gerrit.wikimedia.org/r/mediawiki/vendor.git
    • ध्यान रखें कि अगर आपके किसी भी एक्सटेंशन की अपनी Composer की आवश्यकताएँ हैं तो आप इस विकल्प का उपयोग नहीं कर सकते

मीडियाविकि 1.25 से पहले, कुछ बाहरी लाइब्रेरियों को मूल रिपॉज़िटरी में रखा जाता था और किसी पैकेज मैनेजर की आवश्यकता नहीं होती थी।

अद्यतन रखें

अगर आप मीडियाविकि के किसी विशिष्ट शाखा के विकास संस्करण ("master" शाखा) का इस्तेमाल कर रहे हैं तो नवीनतम बदलावों को प्राप्त करना काफी आसान है। अपनी मीडियाविकि क्लोन डिरेक्ट्री में जाएँ और यह कमांड जारी करें:

gitpull

आप जिस शाखा का उपयोग कर रहे हैं, उसके सभी नवीनतम बदलाव लागू कर दिए जाएँगे।

मूल के नए संस्करण में आपको एक्सटेंशन्स और स्किन्स के नए संस्करणों की आवश्यकता हो सकती है, इसलिए आपको हर स्किन और एक्सटेंशन डिरेक्ट्री में जाकर git pull --recurse-submodules जैसे कमांड की मदद से उन्हें अपडेट करना चाहिए।

आपको vendor/ को आवश्यक लाइब्रेरियों के नवीनतम संस्करणों के साथ अपडेट करने की भी ज़रूरत पड़ सकती है। इसका मतलब अकसर यह भी होता है कि निम्न Composer कमांड चलाना पड़ता है, मगर और जानकारी के लिए ऊपर '#बाहरी लाइब्रेरियाँ प्राप्त करें' देखें।

composerupdate--no-dev

कोड और आवश्यक लाइब्रेरियों को अपडेट करने के बाद मीडियाविकि के update.php कमांड-पंक्ति स्क्रिप्ट का इस्तेमाल करके डेटाबेस को अपडेट करें:

phpmaintenance/run.phpupdate

अगर आप MediaWiki-Vagrant का उपयोग करते हैं तो इसमें एक ही कमांड है, vagrant git-update, जो ये सारे काम करता है।

दूसरे संस्करण में बदलना

हमारे सभी संस्करणों को शाखाओं और टैग्स की मदद से ट्रैक किया जाता है। किसी दूसरे संस्करण में (उदाहरणस्वरूप master शाखा से किसी दूसरी शाखा में) बदलने के लिए, अपने मीडियाविकि क्लोन भंडार में उस शाखा या टैग को चेक-आउट करें जो आपको चाहिए:

gitcheckout<शाखा_का_नाम>

या

gitcheckout<टैग_का_नाम>

इन बदलावों को अपने आप लागू कर दिया जाएगा और आप चलने के लिए तैयार होंगे।

मीडियाविकि एक्सटेंशन्स डाउनलोड करने के लिए गिट का उपयोग करना

गिट पर एक्सटेंशनों की सूची

एक एक्सटेंशन डाउनलोड करें

अगले कमांड्स में ‎<EXT> को उस एक्सटेंशन के नाम से बदलें जिसे आप डाउनलोड करना चाहते हैं, बिना रिक्त स्थानों के। Extension:TitleKey के लिए यह TitleKey होगा। (यह केस संवेदनशील है!)

गिट से एक्सटेंशन को डाउनलोड करके क्लोन करें:

master शाखा प्राप्त करने के लिए अपने विकासक खाते से इन कमांड्स का उपयोग करें:

cd/path/to/extensions
gitclonehttps://gerrit.wikimedia.org/r/mediawiki/extensions/<EXT>

किसी स्थिर प्रकाशन शाखा को क्लोन और चेक-आउट करने के लिए इन कमांड्स का उपयोग करें:

cd/path/to/extensions
gitclonehttps://gerrit.wikimedia.org/r/mediawiki/extensions/<EXT>--branchREL1_46

आप Gerrit के gitiles ऐप्लिकेशन में एक्सटेंशनों के स्रोत कोड को देख सकते हैं, और इस URL पर भी:

https://gerrit.wikimedia.org/g/mediawiki/extensions/<EXT>/+/HEAD

सभी एक्सटेंशन्स डाउनलोड करें

अगर आपको gerrit.wikimedia.org पर मौजूद हर एक्सटेंशन अपनी मशीन में चेक-आउट किया हुआ चाहिए तो यह डालें:

gitclonehttps://gerrit.wikimedia.org/r/mediawiki/extensions

किसी स्थिर प्रकाशन शाखा को चेक-आउट करने के लिए इस कमांड का उपयोग करें:

gitclonehttps://gerrit.wikimedia.org/r/mediawiki/extensions--branchREL1_46

git clone कमांड चलाने के बाद इन कमांड्स से जारी रखें:

cd/path/to/extensions
gitsubmoduleupdate--init--recursive

किसी भी समय पर सभी एक्सटेंशनों को डाउनलोड करने के लिए यह डालें:

cd/path/to/extensions
gitpull
gitsubmoduleupdate--init--recursive

किसी दूसरी शाखा में बदलने के लिए, जैसे कि किसी नए प्रकाशन के बाद:

gitsubmoduleforeach'git checkout -b REL1_45 origin/REL1_45 || :'

याद रखें कि आपको बस उसी संस्करण के एक्सटेंशनों का इस्तेमाल करना चाहिए जिसमें मीडियाविकि है।

master शाखा को ट्रैक करने के लिए:

gitsubmoduleforeach'git checkout -b origin/master || :'

कृपया ध्यान रखें कि आपको किसी भी हाल में उत्पादन के लिए master कोड का इस्तेमाल नहीं करना चाहिए क्योंकि इसे स्थिर नहीं माना जाता।

अगर आपको एक केवल-पठनीय चेक-आउट चाहिए (अगर आप सिर्फ कोड को देखना चाहते हैं) तो आप Labs पर शेयर किए गए मीडियाविकि चेक-आउट को देख सकते हैं और आपको अपनी मशीन पर कुछ भी डाउनलोड करने की ज़रूरत नहीं होगी।

एक एक्सटेंशन हटाएँ

  1. LocalSettings.php से "require_once ..." या "wfLoadExtension( ... )" हटाएँ
  2. किसी भी ऐसी पंक्ति को हटाएँ जो composer.local.json पर एक्सटेंशन का संदर्भ हो (सामान्यतः "extra → merge-plugin → include" अनुभाग में)
  3. install-dir/extensions/ से एक्सटेंशन की डिरेक्ट्री को हटा दें

मीडियाविकि स्किन डाउनलोड करने के लिए गिट का उपयोग करना

गिट पर स्किन्स की सूची

मीडियाविकि 1.24 और उसके बाद से गिट डाउनलोड में स्किन्स शामिल नहीं होते हैं।

एक्सटेंशनों की ही विधि का पालन करें (जैसा पिछले अनुभाग में बताया गया है), मगर हर URL और पथ पर extensions की जगह skins का इस्तेमाल करते हुए।

स्थापना की विस्तृत विधि यहाँ MediaWiki.org पर हर स्किन के पृष्ठ पर मौजूद है, उदाहरण के लिए Skin:Vector#स्थापना देखें। हर स्किन की स्थापना की विधि समकक्ष है।

ये भी देखें

परिशिष्ट

14:26, 21 मार्च 2019 के अवतरण में gerrit.wikimedia.org की कड़ियाँ जोड़ने की विधि बदली गई:

पहले:

gerrit.wikimedia.org/r/p/mediawiki

अब:

gerrit.wikimedia.org/r/mediawiki

AltStyle によって変換されたページ (->オリジナル) /