Завантажити з Git

From mediawiki.org
Jump to navigation Jump to search
This page is a translated version of the page Download from Git and the translation is 99% complete.
Other languages:
Bahasa Indonesia • ‎Bahasa Melayu • ‎Deutsch • ‎English • ‎Esperanto • ‎Napulitano • ‎Nederlands • ‎Scots • ‎Türkçe • ‎asturianu • ‎català • ‎dansk • ‎español • ‎français • ‎galego • ‎interlingua • ‎italiano • ‎lietuvių • ‎magyar • ‎norsk bokmål • ‎occitan • ‎polski • ‎português • ‎português do Brasil • ‎română • ‎sicilianu • ‎suomi • ‎svenska • ‎čeština • ‎Ελληνικά • ‎беларуская (тарашкевіца)‎ • ‎български • ‎русский • ‎українська • ‎العربية • ‎سنڌي • ‎فارسی • ‎हिन्दी • ‎ไทย • ‎中文 • ‎日本語 • ‎한국어

Git — це розподілена система керування версіями. Вона дає змогу користувачу завантажити найновішу версію вихідного коду, з усіма відгалуженнями та позначеними релізами.

Якщо ви розробник і хотіли би пропонувати власні патчі, вам слід клонувати Git-репозиторій програмного забезпечення.

Якщо ж ви не плануєте брати участь у розробці, а хотіли б лише встановити MediaWiki та її розширення, просто завантажте архів стабільного релізу.

Див. Git для детальнішої інформації, в тому числі про те, як зробити свій внесок. Нижче наведено кілька прямих відсилань до кількох поширених завдань.

Передумови

Перед тим, як використовувати Git, ви маєте його встановити. Є чимало різних способів це зробити, вибір залежить від вашої операційної системи. Ось один із посібників про встановлення Git, але ви можете знайти й інші в Інтернеті.

Рекомендується, щоб у Вас був встановлений Composer для завантаження та встановлення сторонніх бібліотек, проте це не обов'язково.

Використання Git для завантаження MediaWiki

Завантаження

Ви можете завантажити ядро MediaWiki з допомогою Git, а також усі розширення, встановлені зараз на кластері серверів Фонду Вікімедіа, та багато інших розширень, що розміщені на Gerrit .

Перший крок — клонувати кореневий репозиторій MediaWiki. Це займе деякий час.

Завантаження для розробки

Гілка 'master' містить найновішу версію MediaWiki, яка перебуває в розробці.

Спочатку пересвідчіться, що у вас є обліковий запис розробника, аби мати ім'я користувача ssh.

Відтак у вікні терміналу введіть таку команду з вашим ssh <USERNAME> для клонування, аби мати можливість надсилати патчі для оцінки досвідченішими розробниками:

git clone ssh://<Ім'я користувача>@gerrit.wikimedia.org:29418/mediawiki/core.git mediawiki

Це клонує (копіює) увесь репозиторій ядра MediaWiki, синхронизований з гілкою 'master', у підкаталог з назвою mediawiki.

Аби встановити в іншу директорію, змініть це в командному рядку (подробиці в цьому документі). Щойно репозиторій клоновано, ви можете перемикатися до інших гілок чи тегів. Гілка розробників, master, містить найновішу версію MediaWiki з усіма новими змінами; код з неї в жодному разі не слід застосовувати на вебсайті, бо він розглядається як нестабільний.

Завантаження стабільної гілки

Якщо ви не плануєте брати участь в розробці, а хотіли б лише анонімно клонувати стабільну версію (гілку релізу) 1.35, застосуйте натомість таку команду:

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

Якщо у вас повільне Інтернет-з'єднання або обмежений трафік, ви можете зменшити кількість клонованих версій, додавши --depth=1 до команди git clone.

Теги MediaWiki (стабільна версія)

Крім того, окремі стабільні версії MediaWiki позначено мітками ('tags'). Вони подібні до tar-архівів з вихідним кодом. Наразі розрізняють 1.35.0 (стабільну), 1.31.10 (з довгим терміном підтримки) та 1.34.4 (успадковану) версії.

Ви можете побачити всі наявні позначки в такий спосіб:

git tag -l | sort -V

Для перемикання на версію із певним тегом, приміром, до найновішого стабільного релізу:

git checkout 1.35.0

Update the Git submodules

Гілки містять посилання на багато модулів, - це, зокрема, популярні розширення та скіни (основна гілка 'master' такого не містить). Оновити модулі можна командою:

cd mediawiki
git submodule update --init

Вибірка зовнішних бібліотек

MediaWiki використовує Composer для керування зовнішніми бібліотеками PHP, які зрештою опиняються в піддиректорії vendor/ вашої установки MediaWiki.

Щоб встановити ці необхідні бібліотеки, Ви можете вибрати:

  • Завантажити і встановити composer PHAR, опціонально перейменувати файл composer.phar згідно з інструкцією для вашої операційної системи, й тоді запустити composer update --no-dev з директорії, в яку встановлено MediaWiki. Рекомендовано саме такий підхід.
  • Або ж, якщо Ви не бажаєте використовувати composer чи хочете використати той самий набір бібліотек, який використано на виробничому кластері Фонду Вікімедіа, то можете натомість створення директорію vendor/ всередині кореневої директорії Вашої інсталяції MediaWiki:
    • 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, то у вас не вийде застосувати цю схему.

До MediaWiki 1.25 зовнішні бібліотеки зберігалися в репозиторії ядра і потреби в менеджері пакетів не було.

Своєчасне оновлення

Якщо Ви використовуєте певну гілку або основну версію розробки (гілку «master») MediaWiki, оновлення репозиторію відносно просте. Перейдіть до своєї директорії MediaWiki (куди відбувалося клонування) і виконайте команду:

git pull

До вашої локальної версії коду буде внесено всі нові зміни використовуваної вами гілки.

Нова весія ядра може вимагати новіших версій розширень і тем оформлення, тому Ви маєте перейти у кожну директорію розширень і тем й оновити її командою на зразок git pull --recurse-submodules.

Вам також слід оновити vendor/ до новіший версій необхідних бібліотек. Часто для цього достатньо виконати таку команду Composer (але погляньте #Fetch external libraries вище за подробицями):

composer update --no-dev

Після оновлення ядра та необхідних бібліотек слід виконати скрипт MediaWiki update.php з командного рядку, щоб відповідним чином оновити таблиці бази даних:

php maintenance/update.php

Якщо Ви використовуєте MediaWiki-Vagrant, там є єдина команда, vagrant git-update, що виконує усі ці кроки.

Як перемкнутися на іншу версію

Кожна з наших версій відслідковується за допомогою або окремих гілок, або теґів. Щоб перемкнутися на таку версію (приміром, з гілки master на іншу гілку чи теґ), слід у Вашій локальній копії репозиторію MediaWiki виконати «checkout» із зазначенням бажаної гілки або теґу:

git checkout <назва_гілки>

або

git checkout <назва_теґу>

Зміни буде застосовано автоматично.

Використання Git для завантаження розширень MediaWiki

Список розширень з git

Завантаження розширення

В наступних командах <EXT> слід замінити назвою розширення, яке Ви хочете завантажити, без пропусків. Так, для Extension:TitleKey це має бути TitleKey (чуттєво до регістру літер!)

Клонування (завантаження) розширення з Git-репозиторію:

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_35

Ви можете переглянути вихідний код розширення у програмі Gerrit's gitiles та за посиланням:

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

Завантажити всі розширення

Якщо Ви хочете скопіювати на свій комп'ютер цсі розширення MediaWiki, доступні на 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_35

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_34 origin/REL1_34 || :'

Пам'ятайте, що слід використовувати саме ті версії розширень, які належать до відповідного релізу MediaWiki.

Аби відслідковувати основну гілку 'master':

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

Зверніть увагу, що в жодному разі не слід використовувати код із основної гілки 'master' на вебсайті, оскільки він розглядається як нестабільний.

Якщо Вам потрібен checkout у режимі лише для читання (наприклад, для обробки grep чи аналізу всього коду MediaWiki), Ви можете скористатися загальнодоступним MediaWiki checkout на Labs без завантаження чого-небудь на свої машини.

Вилучення розширення

  1. Видаліть "require_once …" чи "wfLoadExtension( … )" із LocalSettings.php
  2. Видаліть будь-які рядки, де в composer.local.json згадується це розширення (зазвичай у розділі "extra → merge-plugin → include")
  3. Видаліть директорію розширення із install-dir/extensions/

Використання Git для завантаження тем оздоблення MediaWiki

Список тем офомлення у git

Починаючи з MediaWiki 1.24, теми оздоблення не включено до стандартного Git-завантаження.

Виконайте ті самі кроки, що й для розширень (описані в попередньому розділі), але використовуйте у всіх URL-посиланнях та шляхах skins замість extensions.

Детальні інструкції з інсталяції кожної теми оздоблення доступні тут на MediaWiki.org, приміром, Skin:Vector#Installation. Так само можна знайти й інструкції для інших тем.

Див. також