गिट से डाउनलोड करें
गिट एक वितरित संस्करण नियंत्रण प्रणाली है। इससे आप स्रोत कोड के नवीनतम संस्करण को सभी शाखाओं और टैग किए गए प्रकाशनों के विकल्प के साथ डाउनलोड कर सकते हैं।
अगर आप एक विकासक हैं और पैच प्रस्तुत करना चाहते हैं, आपको गिट से डाउनलोड करना चाहिए।
अगर आप विकसित नहीं करना चाहते हैं और बस मीडियाविकि एक्सटेंशनों को स्थापित ही करना चाहते हैं, इसके बजाय स्थिर tarball प्रकाशन ही डाउनलोड करें।
और जानकारी, खासकर योगदान देने के बारे में, के लिए गिट देखें। नीचे कुछ साधारण कार्यों की विधियाँ हैं।
पूर्व अपेक्षित गुण
गिट का इस्तेमाल करने से पहले आपको इसे स्थापित करना होगा। आपके ऑपरेटिंग सिस्टम के अनुसार गिट पाने के कई तरीके हैं। Gerrit/Tutorial#Set up Git का पालन करें, या फिर अपने पसंदीदा खोज इंजन का इस्तेमाल करें।
यह सुझाव की जाती है कि आप तृतीय-पक्ष लाइब्रेरियों को डाउनलोड करने और स्थापित करने के लिए Composer स्थापित कर लें, लेकिन इसकी आवश्यकता नहीं है।
मीडियाविकि डाउनलोड करने के लिए गिट का उपयोग करना
डाउनलोड करें
आप मीडियाविकि मूल को गिट की मदद से डाउनलोड कर सकते हैं, साथ ही वर्तमान में विकिमीडिया संस्थान के सर्वर क्लस्टर पर स्थापित सभी एक्सटेंशन और gerrit पर होस्ट किए गए कई अन्य एक्सटेंशन भी।
पहला कदम है मीडियाविकि मूल रिपॉज़िटरी को क्लोन करना। इसमें कुछ समय लग जाएगा।
विकास के लिए डाउनलोड करें
मीडियाविकि के आखिरी विकास संस्करण को 'master' शाखा में ट्रैक किया जाता है।
पहले सुनिश्चित करें कि आपने एक विकासक खाता बनाया है, ताकि आपको एक ssh सदस्यनाम मिल जाए।
उसके बाद अपने ssh {{$1|सदस्यनाम}}
से क्लोन करने के लिए टर्मिनल विंडो में यह कमांड डालें ताकि आप पुनरीक्षण के लिए पैच प्रस्तुत कर पाएँ:
git clone https://gerrit.wikimedia.org/r/mediawiki/core.git mediawiki
यह पूरे मीडियाविकि रिपॉज़िटरी को master शाखा से सिंक करके mediawiki
नामक सब-डिरेक्ट्री में क्लोन कर लेता है।
किसी दूसरे डिरेक्ट्री में स्थापित करने के लिए, उसे कमांड लाइन पर बदल दें (और जानकारी के लिए ये प्रलेख देखें)।
जब रिपॉज़िटरी क्लोन हो जाती है, आप अलग-अलग शाखाओं और टैग्स को छाँट सकते हैं।
विकास शाखा, master
, मीडियाविकि का विकास संस्करण है; आपको किसी भी हाल में उत्पादन के लिए master कोड का इस्तेमाल नहीं करना चाहिए क्योंकि इसे स्थिर नहीं माना जाता।
एक स्थिर शाखा डाउनलोड करें
अगर आप सॉफ़्टवेयर पैच को विकसित नहीं करना चाहते पर स्थिर प्रकाशन शाखा 1.43 को गुमनाम होकर क्लोन करना चाहते हैं, इस कमांड का इस्तेमाल करें:
git clone https://gerrit.wikimedia.org/r/mediawiki/core.git --branch REL1_43 mediawiki
अगर आपके इंटरनेट कनेक्शन की गति धीमी है और आप क्लोन होने वाले संस्करणों संख्या को कम करना चाहते हैं, git clone
कमांड पर --depth=1
जोड़ें।
मीडियाविकि टैग्स (स्थिर संस्करण)
वैकल्पिक रूप से, मीडियाविकि के विशिष्ट स्थिर संस्करणों को 'टैग्स' की मदद से ट्रैक किया जाता है। ये tarball प्रकाशनों से अलग होते हैं। वर्तमान में, ये हैं 1.43.0 (स्थिर), 1.43.0 (LTS) और 1.39.11 (विरासती LTS)।
आप इसकी मदद से उपलब्ध टैग्स देख सकते हैं:
git tag -l | sort -V
विशिष्ट टैग्स, जैसे आखिरी स्थिर प्रकाशन, का उपयोग करने के लिए:
git checkout 1.43.0
गिट सबमॉड्यूल्स को अपडेट करें
इन शाखाओं में vendor/
डिरेक्ट्री के प्रसिद्ध एक्सटेंशनों और स्किन्स के लिए कई गिट सबमॉड्यूल्स हैं।
master
शाखा में ये नहीं हैं।
सबमॉड्यूल्स को अपडेट करने के लिए चलाएँ:
cd mediawiki
git submodule update --init --recursive
बाहरी लाइब्रेरी प्राप्त करें
मीडियाविकि बाहरी PHP लाइब्रेरियों को प्रबंधित करने के लिए Composer का इस्तेमाल करती है, जो सभी आपके मीडियाविकि डिरेक्ट्री के vendor/
डिरेक्ट्री में चले जाते हैं।
इन आवश्यक लाइब्रेरियों को स्थापित करने के लिए आपके पास एक विकल्प है:
- composer PHAR को डाउनलोड करके स्थापित करें, वैकल्पिक रूप से अपने OS के विधि के अनुसार composer.phar का नाम बदलें, और फिर अपने मीडियाविकि डिरेक्ट्री से
composer update --no-dev
चलाएँ। यही विकल्प सुझाया जाता है।- अगर डिफ़ॉल्ट PHP CLI संस्करण वेब सर्वर के PHP संस्करण से मेल नहीं खाता, इसे
php7.4 composer.phar update --no-dev
की मदद से निर्दिष्ट करें।
- अगर डिफ़ॉल्ट PHP CLI संस्करण वेब सर्वर के PHP संस्करण से मेल नहीं खाता, इसे
- अगर आप Composer का उपयोग नहीं करना चाहते हैं, या यदि आप WMF उत्पादन क्लस्टर पर इस्तेमाल होने वाले वेंडर लाइब्रेरियों के सेट का ही उपयोग करना चाहते हैं, तो आप इसके बजाय आप अपने मीडियाविकि स्थापना के कोर फोल्डर में एक
vendor/
डिरेक्ट्री बना सकते हैं: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/run.php update
अगर आप 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 https://gerrit.wikimedia.org/r/mediawiki/extensions/<EXT>
To clone and checkout a stable release branch instead, use these commands:
cd /path/to/extensions
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/<EXT> --branch REL1_43
आप Gerrit के gitiles ऐप्लिकेशन में एक्सटेंशों के स्रोत कोड को देख सकते हैं, और इस URL पर भी:
https://gerrit.wikimedia.org/g/mediawiki/extensions/<EXT>/+/HEAD
सभी एक्सटेंशन डाउनलोड करें
अगर आपको वह हर एक्सटेंशन चाहिए जिन्हें gerrit.wikimedia.org ने आपके मशीन में डाले हैं, यह डालें:
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions
Or, to checkout stable releases branch instead, use this command:
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions --branch REL1_43
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_42 origin/REL1_42 || :'
याद रखें कि आपको बस उसी संस्करण के एक्सटेंशनों का इस्तेमाल करना चाहिए जिसमें मीडियाविकि है।
master शाखा को ट्रैक करने के लिए:
git submodule foreach 'git checkout -b origin/master || :'
कृपया ध्यान रखें कि आपको किसी भी हाल में उत्पादन के लिए master कोड का इस्तेमाल नहीं करना चाहिए क्योंकि इसे स्थिर नहीं माना जाता।
अगर आपको एक केवल-पठनीय चेकआउट चाहिए (अगर आप सिर्फ कोड को देखना चाहते हैं), आप Labs पर शेयर किए गए मीडियाविकि चेकआउट को देख सकते हैं और आपको अपने मशीन पर कुछ भी डाउनलोड करने की ज़रूरत नहीं होगी।
एक एक्सटेंशन हटाएँ
LocalSettings.php
से "require_once …
" या "wfLoadExtension( … )
" हटाएँ- कोई भी ऐसी पंक्ति को हटाएँ जो
composer.local.json
पर एक्सटेंशन का सन्दर्भ है (ज़्यादातर "extra → merge-plugin → include" अनुभाग में) install-dir/extensions/
से एक्सटेंशन की डिरेक्ट्री को हटाएँ
मीडियाविकि स्किन डाउनलोड करने के लिए गिट का उपयोग करना
मीडियाविकि 1.24 और उसके बाद से गिट पर स्किन्स नहीं हैं।
एक्सटेंशन की ही विधि का पालन करें (जैसा पिछले अनुभाग में बताया गया है), पर हर URL और पाथ पर extensions
की जगह skins
का इस्तेमाल करते हुए।
स्थापना की विस्तृत विधि यहाँ MediaWiki.org पर हर स्किन के पृष्ठ पर मौजूद है, उदाहरण के लिए स्किन:वेक्टर#स्थापना देखें। हर स्किन के स्थापना की विधि उसी पर आधारित है।
ये भी देखें
परिशिष्ट
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