Download from Git/ru


 * Начиная с версий 1.19beta2, 1.18.2, 1.17.3, ядро MediaWiki и расширения используют для версионного контроля. Для старых версий — см. .

Git — это распределённая система управления версиями файлов, позволяющая пользователям загрузить самые последние версии, не дожидаясь, пока кто-то их упакует. Она позволяет MediaWiki выпускать новые версии быстрее. Для вас же будет проще обновить установленную версию, откатить обновления или загрузить исправление. Однако всегда помните, что официальные стабильные релизы являются менее рискованными.

Более подробную информацию можно найти на странице Git, особенно в части внесения вклада в проект. Ниже приводятся краткие рекомендации по нескольким наиболее распространенным задачам.

Необходимые компоненты
Вы должны установить Git прежде, чем начать его использовать. В зависимости от вашей операционной системы есть различные способы это сделать. Исходные коды и официальные скомпилированные файлы можно найти на сайте git-scm.com. Для альтернативных методов установки Git поищите инструкции под свою операционную систему через ваш любимый поисковик.

Рекомендуется, чтобы у вас был установлен composer для загрузки и установки сторонних библиотек, но это не обязательно.

Скачать
В настоящий момент вы можете скачать ядро MediaWiki с помощью Git, а также все расширения, установленные в настоящее время на кластере серверов Фонда Викимедиа, и многие другие расширения, размещённые на.

Первым шагом является клонирование репозитория ядра MediaWiki. Это займёт некоторое время.

В окне терминала введите следующую команду: git clone https://gerrit.wikimedia.org/r/p/mediawiki/core.git

Это клонирует весь репозитарий ядра MediaWiki в поддиректорию core. Чтобы установить в конкретную директорию, добавьте её в командную строку (больше информации в этой документации). Веткой (branch) по умолчанию будет, самая последняя версия MediaWiki для разработчиков. Как только репозиторий будет склонирован, легко сможете переключиться на другие версии или метки (см. ниже), в том числе на стабильные версии MediaWiki.

Скачать для разработки
Если у вас есть доступ разработчика (который легко запросить), тогда вместо анонимного клонирования через HTTPS следует выполнить клонирование через ssh , чтобы вы смогли отправлять изменения на рассмотрение: git clone ssh:// @gerrit.wikimedia.org:29418/mediawiki/core.git



Выборка внешних библиотек
Начиная с MediaWiki 1.25, имеются некоторые требуемые внешние библиотеки которых больше нет в нашем репозитории Git. Мы используем composer, чтобы управлять ими. Для установки этих библиотек, вы можете выбрать:


 * Скачать и установить composer, перейти к основному каталогу, а затем запустить composer install --no-dev . Примечание. Если у вас уже есть composer.lock файл, то следует запустить composer update --no-dev.


 * Если вы не хотите использовать composer, или если вы хотите использовать тот же набор библиотек, который используется на производственном кластере ФВМ, вы можете вместо этого выполнить git clone https://gerrit.wikimedia.org/r/p/mediawiki/vendor.git для создания каталога vendor/ внутри основного каталога установки MediaWiki. Убедитесь, что у вас правильная ветка для вашей версии MediaWiki (например, REL1_25 для 1.25).

Версии Фонда Викимедиа
Удалённые ветки отслеживают версии MediaWiki, используемые на кластере серверов Фонда Викимедиа. Последние могут быть не совсем стабильными, но к ним очень быстро выходят исправления, и в целом они всё же достаточно стабильны — в конце концов, их используют такие крупные проекты, как Википедия. После того, как REL-версия признаётся «стабильной», мы «помечаем её» и формируем tar-архив с исходным кодом.

Чтобы увидеть, какие версии доступны, переключитесь на каталог ядра MediaWiki и введите следующую команду: git branch -r | sort -V Основные релизы обозначаются как «origin/REL » (например, «origin/»). Чтобы переключиться на конкретную версию релиза: git checkout -b REL origin/REL Например, для переключения на текущую стабильную версию,, введите: git checkout -b origin/

Метки MediaWiki (стабильная версия)
Кроме того, определённые устойчивые версии MediaWiki отмечаются с помощью «меток» (tags). Они аналогичны tar-архивам с исходным кодом. Вы можете увидеть доступные версии с помощью: git tag -l | sort -V При использовании команды не GNU-сортировки, например, такой, как на Mac OS X, вы должны полагаться на старые добрые разделители: git tag -l | sort -n -t. -k1 -k2 -k3

Для использования специфических тегов: git checkout

Последняя версия MediaWiki для разработчиков
Самая свежая версия MediaWiki для разработчиков расположена в мастер-ветке. Она помечается локально как версия по умолчанию, когда вы впервые клонируете репозиторий MediaWiki. Если вы перешли на другую ветку, но хотели бы вернуться к использование новейшей MediaWiki, выполните: git checkout master

Поддержание в актуальном состоянии
Если вы используете какую-то конкретную версию MediaWiki или версию для разработчиков (ветку «master»), загрузка последних изменений довольно проста. Перейдите в ваш каталог с клоном MediaWiki и выполните команду git pull :

git pull

Будут применены все последние изменения для версии, которую вы используете.

Новая версия ядра может потребовать более новые версии расширений и скинов, так что необходимо перейти в каждый из каталогов расширений и скинов и обновить его командой наподобие git pull --recurse-submodules.

Кроме того, после обновления вы должны запустить из командной строки  MediaWiki, чтобы обновить таблицы баз данных по мере необходимости:

php maintenance/update.php

Вам также понадобится обновить mediawiki/vendor до каких-либо новых версий требуемых библиотек; см. .

Если вы используете MediaWiki-Vagrant, в этой программе есть специальная команда, vagrant git-update, которая производит все эти действия.

Переключение на другую версию
Переключение на другую версию MediaWiki на Git гораздо проще, чем в SVN. Каждый из наших версий отслеживаются через версии (branch) или метки. Для перехода к одной из них всё, что вам нужно сделать, это выполнить 'checkout' конкретной версии или метки из вашего каталога клонированной MediaWiki: git checkout или git checkout Изменения будут применены автоматически, и всё будет готово к работе.

Использование Git для скачивания расширений MediaWiki

 * Список расширений на git'е

Скачать расширение

 *  следует заменить на название расширения (без пробелов), которое вы хотите загрузить. Для Extension:TitleKey это будет TitleKey. (название регистрозависимо!)

Скачайте и клонируйте расширение с Git:

cd /path/to/extensions git clone https: //gerrit.wikimedia.org/r/p/mediawiki/extensions/.git

Разработчики могут клонировать командой: git clone ssh:// <USERNAME>@gerrit.wikimedia.org:29418/mediawiki/extensions/<EXT>.git Вы можете просмотреть исходный код расширений в программе Phabricator «diffusion», а также по следующей ссылке:

<pre style="white-space: pre-wrap;"> https://gerrit.wikimedia.org/r/gitweb?p=mediawiki/extensions/<EXT>.git;a=tree;h=refs/heads/master;hb=master

Скачать все расширения
Если вы желаете загрузить на свой компьютер все расширения MediaWiki, которые находятся на gerrit.wikimedia.org, введите следующее:

Тосле этого, чтобы обновить расширения до последних версий, просто введите:

Чтобы обновиться до определённой версии, просто выполните это вместо последней команды из блока выше:

Если вам только нужен checkout в режиме только чтения (например, для анализа кода MediaWiki или обработки его grep), можно использовать общедоступный MediaWiki checkout на Labs, не скачивая ничего на ваши компьютеры.

Удалить расширение
Просто удалите папку с расширением, а также переменную  из

Использование Git для скачивания тем оформления MediaWiki

 * Список оболочек на git'е

MediaWiki версии 1.24 и более поздние не включают темы оформления в загрузку с Git.

Следуйте тем же процедурам, что и для расширений (описано в предыдущей секции), но используя  вместо   во всех URL и путях.

Подробные инструкции по установке доступны на странице каждой темы оформления на MediaWiki.org, например, см. Skin:Vector#Installation. Инструкции для всех остальных тем оформления аналогичны.

См. также

 * , как альтернатива скачиванию с Git
 * , как альтернатива скачиванию с Git