Git からのダウンロード
Git は分散型バージョン管理システムです。 利用者がすべてのブランチやタグ付きリリースからソースコードの「最新」バージョンを自由に選んでダウンロードできる仕組みです。
開発者でパッチを提出したい場合は、Gitからダウンロードしてください。
もし開発をしたいわけではなく、MediaWikiと拡張機能をインストールしたいだけであれば、代わりに安定版リリースのtarball(ターボール)をダウンロードしてください。
詳細情報は、特に貢献をするにはGit を参照してください。基本作業のいくつかは、以下に概要を示します。
要件
使用するにはまず Git をインストールしてください。Git はさまざまな方法で入手できますが、ご使用中のオペレーティング システムに依存します。 Gerrit/Tutorial#Set up Gitに従うか、好きな検索エンジンを使って探してください。
サードパーティーのライブラリをダウンロードおよびインストールするには、Composer のインストールを推奨しますが、必須ではありません。
MediaWiki のダウンロードに Git を使用
ダウンロード
Gitを使用してMediaWikiコアのほか、ウィキメディア財団のサーバークラスタ上に現在インストールされているすべての拡張機能と、Gerrit で提供されているその他多くの拡張機能をダウンロードすることができます。
まず、MediaWiki のコア リポジトリをクローン (複製) します。これには時間が掛かる場合があります。
開発者向けダウンロード
MediaWiki の最新の開発バージョンは、「master」ブランチで追跡されています。
まず開発者アカウントを作成していて、sshの利用者名を持っていることを確かめてください。
次に、端末ウィンドウで以下のコマンドを入力して、リポジトリをクローンします:
git clone https://gerrit.wikimedia.org/r/mediawiki/core.git mediawiki
これによりMediaWikiコアリポジトリ全体がmediawiki
という名前のサブディレクトリにクローンされ、マスターブランチに同期されます。
別のディレクトリにインストールするには、コマンドラインでディレクトリを変更してください(詳細はこの文書を参照してください。)
リポジトリがクローンされると、異なるブランチやタグに切り替えができます。
開発ブランチ master
は最先端の開発者向けMediaWikiです。安定とはみなされないため、いかなる状況下でもマスターコードを本番用環境に使用すべきではありません。
安定版ブランチをダウンロード
もしソフトウェアのパッチ開発をしたいわけではなく、匿名で安定版リリースのブランチ1.42をクローンしたいのであれば、下記のコマンドを利用してください。
git clone https://gerrit.wikimedia.org/r/mediawiki/core.git --branch REL1_42 mediawiki
ネット接続が遅くてクローンするリビジョンの数を減らしたい場合は、上記のgit clone
コマンドに--depth=1
を追加します。
MediaWiki タグ (安定バージョン)
一方、MediaWiki の特定の安定バージョンは「タグ」で追跡されています。これらの内容は tar アーカイブ リリースと似ています。 現状は 1.42.3 (安定バージョン)、1.39.10 (LTS)、1.39.10 (旧LTS) です。
使用できるタグの一覧はこちら:
git tag -l | sort -V
特定のタグを使用する方法。たとえば現状の最新リリースは:
git checkout 1.42.3
Gitサブモジュールの更新
ブランチおよびタグにはそれらの中に、よく使われる拡張機能や外装およびvendor/
ディレクトリのためのGitサブモジュールのブランチがあります。
これらは、master
ブランチにはありません。
サブモジュールを更新するには、以下を実行してください。
cd mediawiki
git submodule update --init --recursive
外部ライブラリの取得
MediaWiki が外部 PHP ライブラリの管理に使用する Composer は、どの場合もご使用の MediaWiki ディレクトリ内の vendor/
ディレクトリを参照します。
これらの必要なライブラリをインストールするには、以下の選択肢があります:
- composer PHAR をダウンロードしてインストールし、場合により composer.phar のファイルを名称変更。その後、ローカルの MediaWiki ディレクトリに移動して
composer update --no-dev
を実行する方法です。以上が推奨される手順です。- 既定の PHP CLI のバージョンがウェブサーバーの PHP のバージョンと一致しない場合、例えば
php7.4 composer.phar update --no-dev
のようにそれを指定します。
- 既定の PHP CLI のバージョンがウェブサーバーの PHP のバージョンと一致しない場合、例えば
- または、Composer を使いたくない場合、またはウィキメディア財団の本番クラスターと同一のベンダー ライブラリを使用したい場合、代わりにご利用の MediaWiki インストレーションのコア フォルダーに
vendor/
ディレクトリを作成します:git clone https://gerrit.wikimedia.org/r/mediawiki/vendor.git
- ご利用の拡張機能ごとに独自の Composer 要件が設定されている場合は、このオプションは使用できません。
MediaWiki 1.25 未満では、外部ライブラリはコアリポジトリに含まれていて、パッケージマネージャーは不要でした。
最新の状態に保つ
MediaWikiの特定のブランチまたは開発バージョン(「master」ブランチ)を使用している場合、最新の変更点を入手することは比較的簡単です。MediaWikiをクローンしたディレクトリに移動して、このコマンドを実行してください:
git pull
ご使用中のブランチに対する最新の変更点がすべて適用されます。
場合によっては新しいバージョンのコアに新しい拡張機能や外装が必要なため、拡張機能や外装ごとにそれぞれのディレクトリに移動し、git pull --recurse-submodules
といったコマンドでそれらを更新しなくてはいけません。
さらに vendor/
を必須ライブラリのより新しいバージョンに更新する必要があります。
多くの場合、下記の Composer コマンドを実施するのですが、手順は前述の#外部ライブラリの取得を参照します。
composer update --no-dev
そしてコードと必須ライブラリの更新/アップグレード後は、データベース・テーブルの更新が求められるため、引きつづき MediaWiki のコマンドラインスクリプト update.php
を実行します。
php maintenance/run.php update
MediaWiki-Vagrant を利用している場合は、これら一連の手順を一度で実行してくれる vagrant git-update
コマンドがあります。
別のバージョンへの切り替え
各バージョンはブランチやタグで追跡されていて、どれに切り替えるにしても、手順はご利用の MediaWiki をクローンしたディレクトリ内でお好みのブランチやタグ(master
ブランチから別のブランチへまたは別のタグへ)をチェックアウトするだけです。
git checkout <ブランチ名>
または
git checkout <タグ名>
変更内容が自動的に適用され、すべてすぐに使用できる状態になります。
MediaWiki 拡張機能のダウンロードに Git を使用
拡張機能のダウンロード
- 以下のコマンド内の
<EXT>
を、ダウンロードしたい拡張機能の名前に読み替えてください (空白は不要です)。例えば拡張機能 Extension:TitleKey の場合は TitleKey になります。(大文字小文字は区別されます。)
拡張機能を Git からダウンロードしてクローンします:
開発者アカウントを使用して、以下のコマンドを使用して master ブランチを取得します:
cd /path/to/extensions
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/<EXT>
安定したリリース ブランチをクローンしてチェックアウトするには、以下のコマンドを使用してください:
cd /path/to/extensions
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/<EXT> --branch REL1_42
拡張機能のソースコードを見るには、アプリケーションのGerrit's gitilesを使うか、もしくは以下のURLを利用します。
https://gerrit.wikimedia.org/g/mediawiki/extensions/<EXT>/+/HEAD
すべての拡張機能のダウンロード
gerrit.wikimedia.org から すべての MediaWiki 拡張機能をご利用の端末にダウンロードしたい場合は、以下をコマンドラインに入力します:
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions
または、代わりに安定リリース ブランチをチェックアウトする場合は、以下のコマンドを使用してください:
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions --branch REL1_42
git clone
コマンドを実行した後、以下のコマンドを実行してください:
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 || :'
そのバージョンのMediaWikiと同じリリースの拡張機能のみを使用してください。
マスターブランチを追跡するには:
git submodule foreach 'git checkout -b origin/master || :'
安定しているとは考えられないため、どのような状況下でも、本番用環境にマスターコードを使用すべきではありません。
読み取り専用のチェックアウトで十分なら(例えばMediaWikiコード全体を検索、分析するとき)、自分の端末に何もダウンロードせずにLabsにある共有の MediaWiki チェックアウトを利用することができます。
拡張機能の除去
LocalSettings.php
から「require_once …
」または「wfLoadExtension( … )
」を除去。composer.local.json
内で拡張機能を参照する行をすべて除去 (通常は「extra → merge-plugin → include」の手順に従う)install-dir/extensions/
から拡張機能のディレクトリを除去。
MediaWiki 外装のダウンロードに Git を使用
Gitのダウンロードにおいて、MediaWiki 1.24以降では、外装が含まれていません。
上記の拡張機能の場合とまったく同じ手順を踏んでください (手順は前の節で解説)。ただしどの URL でもパスでも、文字列中の extensions
を skins
で置き換えます。
詳細なインストールの手引きは、ここ MediaWiki.org 上のそれぞれの外装のページにあります。例えばSkin:ベクター#インストールを参照してください。他のすべての外装の手引きについても同様です。
関連項目
付録
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