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

This page is a translated version of the page Download from Git and the translation is 96% complete.
Outdated translations are marked like this.

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

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

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

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

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

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

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

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

डाउनलोड करें

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

पहला कदम है मिडियाविकि कोर रिपॉज़िटरी को क्लोन करना। इसमें कुछ समय लग जाएगा।

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

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

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

उसके बाद अपने SSH <USERNAME> से क्लोन करने के लिए टर्मिनल विंडो में यह कमांड डालें ताकि आप रिव्यू के लिए पैच प्रस्तुत कर पाएँ:

git clone ssh://<सदस्यनाम>@gerrit.wikimedia.org:29418/mediawiki/core.git mediawiki

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

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


एक स्थिर ब्रांच डाउनलोड करें

अगर आप सॉफ़्टवेयर पैच को विकसित नहीं करना चाहते पर स्थिर रिलीज़ ब्रांच 1.38 को गुमनाम होकर क्लोन करना चाहते हैं, इस कमांड का इस्तेमाल करें।

git clone https://gerrit.wikimedia.org/r/mediawiki/core.git --branch REL1_38 mediawiki

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

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

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

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

git tag -l | sort -V

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

git checkout 1.38.1

गिट सबमोडलों को अपडेट करें

इन ब्रांचों में कई गिट सबमोडल हैं, जिनका इस्तेमाल आम तौर पर एक्सटेंशन और स्किन के लिए होता है (ये master ब्रांच में मौजूद नहीं हैं)। सबमोडलों को अपडेट करने के लिए यह चलाएँ: The master branch does not have these. To update the submodules, run:

cd mediawiki
git submodule update --init --recursive

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

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

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

  • composer PHAR को डाउनलोड करके स्थापित करें, वैकल्पिक रूप से अपने OS के विधि के अनुसार composer.phar का नाम बदलें, और फिर अपने मीडियाविकि डिरेक्ट्री से composer update --no-dev चलाएँ। यही विकल्प सुझाया जाता है।
  • अगर आप Composer का उपयोग नहीं करना चाहते हैं, या यदि आप WMF उत्पादन क्लस्टर पर इस्तेमाल होने वाले वेंडर लाइब्रेरियों के सेट का ही उपयोग करना चाहते हैं, तो आप इसके बजाय आप अपने मीडियाविकि स्थापना के कोर फोल्डर में एक vendor/ डिरेक्ट्री बना सकते हैं:
    • With your developer account, use this command: git clone ssh://<USERNAME>@gerrit.wikimedia.org:29418/mediawiki/vendor.git
    • For anonymous checkout, use this command: git clone https://gerrit.wikimedia.org/r/mediawiki/vendor.git
    • ध्यान रखें कि अगर आपके किसी भी एक्सटेंशन की अपनी Composer की ज़रूरतें हैं, आप इस विकल्प का उपयोग नहीं कर सकते

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

पूर्ण रखें

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

git pull

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

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

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

composer update --no-dev

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

php maintenance/update.php

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

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

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

git checkout <ब्रांच_का_नाम>

या

git checkout <टैग_का_नाम>

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

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

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

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

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

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

With your developer account, use these commands to get the master branch:

cd /path/to/extensions
git clone ssh://<USERNAME>@gerrit.wikimedia.org:29418/mediawiki/extensions/<EXT>

For anonymous checkout of the stable branch instead, use these commands:

cd /path/to/extensions
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/<EXT> --branch REL1_38

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

https://gerrit.wikimedia.org/g/mediawiki/extensions/<EXT>/+/refs/heads/master

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

अगर आपको वह हर एक्सटेंशन चाहिए जिन्हें gerrit.wikimedia.org ने आपके मशीन में डाले हैं, यह डालें:

With your developer account, to get the master branch:

git clone ssh://<USERNAME>@gerrit.wikimedia.org:29418/mediawiki/extensions

For anonymous checkout of the stable branch instead, use this command:

git clone https://gerrit.wikimedia.org/r/mediawiki/extensions --branch REL1_38

After running the git clone command, continue with these commands:

cd /path/to/extensions
git submodule update --init --recursive

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

cd /path/to/extensions
git pull
git submodule update --init --recursive

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

git submodule foreach 'git checkout -b REL1_37 origin/REL1_37 || :'

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

Master ब्रांच को ट्रैक करने के लिए:

git submodule foreach '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 पर हर स्किन के पृष्ठ पर मौजूद है, उदाहरण के लिए स्किन:वेक्टर#स्थापना देखें। हर स्किन के स्थापना की विधि उसी पर आधारित है।

यह भी देखें

  • Intranet/Intranet की स्थापना, जो मीडियाविकि के उपयोग के लिए गिट का इस्तेमाल करने वाले पृष्ठों का एक समूह है।

Appendix

The Revision as of 14:26, 21 March 2019 changed the standard of linking to gerrit.wikimedia.org:
from:

gerrit.wikimedia.org/r/p/mediawiki

to:

gerrit.wikimedia.org/r/mediawiki