Изтегляне от Git
Git is a distributed version control system. It allows you to download the very latest version of the source code, with all the branches and tagged releases at your disposal.
You should download from Git if you are a developer and want to submit patches.
If you do not want to develop but only install MediaWiki and extensions, then download stable tarball releases instead.
За повече информация вижте Git, и по-специално за допринасянето към проекта. По-долу са дадени кратки упътвания за някои по-общи задачи.
Предварителни изисквания
Трябва да имате инсталиран Git преди да можете да го използвате. В зависимост от операционната ви система, съществуват различни начини да се сдобиете с Git. Follow Gerrit/Tutorial#Set up Git, or use your favorite search engine.
За изтегляне и инсталиране на библиотеки от други места, е препоръчително да имате инсталиран Composer , но не е задължително.
Употреба на Git за изтегляне на MediaWiki
Изтегляне
Можете да изтеглите основния код на MediaWiki, използвайки Git, както и всички разширения, инсталирани в момента на сървърния клъстер на Фондация Уикимедия и много други разширения, хоствани на gerrit .
Първата стъпка е да се клонира хранилището с основния код на MediaWiki. Това ще отнеме известно време.
Изтегляне за разработка
Най-новата версия за разработки на MediaWiki се проследява в клона 'master'.
First make sure that you have created a developer account, so that you have an SSH username.
Then, in a terminal window, enter the following command to clone the repository:
git clone https://gerrit.wikimedia.org/r/mediawiki/core.git mediawiki
This clones the entire MediaWiki core repository, synced to the master branch, into a sub-directory named mediawiki
.
To install into a different directory, change that in the command line (for more info refer to these docs).
Once the repository is cloned, you can switch to different branches or tags.
The development branch, master
, is the cutting-edge, developer version of MediaWiki; you should not use master code for production under any circumstances as it is not considered stable.
Download a stable branch
If you do not want to develop software patches but want to anonymously clone the stable release branch 1.42, use this command instead:
git clone https://gerrit.wikimedia.org/r/mediawiki/core.git --branch REL1_42 mediawiki
If you have a slow internet connection and want to reduce the number of revisions that are cloned, add --depth=1
to the git clone
command.
MediaWiki етикети (стабилна версия)
Алтернативно, специфични стабилни версии на MediaWiki се проследяват с помощта на 'етикети' (tags). Те са аналогични на tar-архивите. Currently, these are 1.42.4 (stable), 1.39.11 (LTS) and 1.39.11 (legacy LTS).
You can see all available tags with:
git tag -l | sort -V
За да използвате определен етикет, напр. най-новата стабилна версия:
git checkout 1.42.4
Update the Git submodules
The branches and tags have a bunch of Git submodules in them, for commonly-used extensions and skins and for the vendor/
directory.
The master
branch does not have these.
To update the submodules, run:
cd mediawiki
git submodule update --init --recursive
Избор на външни библиотеки
MediaWiki uses Composer to manage external PHP libraries, all of which end up in the vendor/
directory in your MediaWiki directory.
За да инсталирате необходимите библиотеки, можете да изберете:
- Download and install the composer PHAR, optionally rename the composer.phar file as instructed for your OS, and then run
composer update --no-dev
from your MediaWiki directory. This is the recommended approach.
- If the default PHP CLI version does not match the web server's PHP version, specify it with e.g.
php7.4 composer.phar update --no-dev
.
- If the default PHP CLI version does not match the web server's PHP version, specify it with e.g.
- Ако не искате да използвате composer, или ако искате да използвате същия набор от библиотеки, който се използва сървърния клъстер на Фондация Уикимедия, можете вместо да създадете
vendor/
директория в основната папка на инсталираното от вас MediaWiki:git clone https://gerrit.wikimedia.org/r/mediawiki/vendor.git
- Note that if any of your extensions have their own Composer requirements, then you cannot use this option.
Prior to MediaWiki 1.25, external libraries were kept in the core repository, and no package manager was required.
Поддържане в актуално състояние
Ако използвате конкретен клон или версията за разработки (клона "master") на MediaWiki, внедряването на последните промени е сравнително лесно. Отидете във вашата директория с клона на MediaWiki и изпълнете командата:
git pull
За клона, който използвате, ще бъдат приложени всички последни промени.
Новата версия на основния код може да изисква по-нови версии на разширения и облици, така че трябва да влезете във директорията на всяко разширение и облик и да я актуализирате с команда като git pull --recurse-submodules
.
You also need to update vendor/
with any newer versions of required libraries.
This often means running the following Composer command, but see #Fetch external libraries above for more details:
composer update --no-dev
След актуализирането/ надграждането на кода и необходимите библиотеки, трябва да стартирате скрипта Медияуики update.php
на команден ред, за да актуализирате таблиците на базата данни, както е необходимо:
php maintenance/run.php update
Ако използвате MediaWiki-Vagrant , тя предлага една единствена команда, vagrant git-update
, която изпълнява всички тези стъпки.
Преминаване към различна версия
Всяка от версиите се проследява чрез клонове или етикети. За да преминете към различна версия (например от клон master
към различен клон или таг), от вашата клон директория на MediaWiki изпълнете checkout (посочете) конкретния клон или етикет, който искате:
git checkout <име на клона>
или
git checkout <име на етикета>
Промените ще бъдат приложени автоматично и всичко ще е готово за работа.
Използване на Git за изтегляне на MediaWiki разширения
Изтегляне на разширение
- В следващите команди заменете <EXT> с името на разширението, което искате да изтеглите, без интервали. За Extension:TitleKey , това например ще бъде TitleKey. (различава големи от малки букви!)
Изтегляне и клониране на разширение от Git:
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_42
Можете да видите изходния код на разширението в приложението gitiles и на следния URL адрес:
https://gerrit.wikimedia.org/g/mediawiki/extensions/<EXT>/+/HEAD
Изтегляне на всички разширения
Ако предпочитате да имате всички разширения на MediaWiki, които се намират на 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_42
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_41 origin/REL1_41 || :'
Remember that you should only use versions of extensions from the same release as that version of MediaWiki and each other.
To track the master branch:
git submodule foreach 'git checkout -b origin/master || :'
Please note that you should not use master code for production under any circumstances as it is not considered stable.
Ако само имате нужда от checkout само за четене (например да анализирате или изследвате с grep команда целия код на MediaWiki), можете да използвате общодостъпния MediaWiki checkout на Labs, без да сваляте нищо на вашата машина.
Премахване на разширение
- Remove the "
require_once …
" or "wfLoadExtension( … )
" fromLocalSettings.php
- Remove any line referencing the extension in
composer.local.json
(usually in the "extra → merge-plugin → include" section)
- Remove the extension's directory in
install-dir/extensions/
Използване на Git за изтегляне на MediaWiki облици
MediaWiki 1.24 и следващите версии не включват облици в изтеглянията от Git.
Следвайте точно същата процедура както за разширенията (описана в предишния раздел), но използвайте skins
вместо extensions
във всички URL адреси и пътища.
Подробни инструкции за инсталиране са достъпни на страницата на всеки облик тук на MediaWiki.org, вижте например Skin:Vector#Installation. Инструкциите за всички останали облици са аналогични.
Вижте също
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