Doonlaid fae Git

Jump to: navigation, search
This page is a translated version of the page Download from Git and the translation is 39% complete.

Outdated translations are marked like this.
Other languages:
aragonés • ‎العربية • ‎asturianu • ‎تۆرکجه • ‎беларуская (тарашкевіца)‎ • ‎български • ‎català • ‎čeština • ‎dansk • ‎Deutsch • ‎Ελληνικά • ‎English • ‎Esperanto • ‎español • ‎euskara • ‎فارسی • ‎suomi • ‎français • ‎galego • ‎Hawaiʻi • ‎עברית • ‎हिन्दी • ‎hrvatski • ‎magyar • ‎Հայերեն • ‎Bahasa Indonesia • ‎Interlingue • ‎italiano • ‎日本語 • ‎ქართული • ‎Taqbaylit • ‎한국어 • ‎Kurdî • ‎Lëtzebuergesch • ‎lietuvių • ‎Bahasa Melayu • ‎Napulitano • ‎नेपाली • ‎Nederlands • ‎occitan • ‎polski • ‎پښتو • ‎português • ‎português do Brasil • ‎română • ‎русский • ‎sicilianu • ‎Scots • ‎سنڌي • ‎slovenčina • ‎српски / srpski • ‎svenska • ‎தமிழ் • ‎తెలుగు • ‎ไทย • ‎Türkçe • ‎татарча/tatarça • ‎ئۇيغۇرچە • ‎українська • ‎Tiếng Việt • ‎ייִדיש • ‎粵語 • ‎中文
Sin MediaWiki 1.19beta2, 1.18.2, 1.17.3, MediaWiki core n extensions uise GitGit fer version control. Fer aulder versions, see SubversionSubversion

Git is distreebutit version control saffware that permits uisers tae doonlaid the fair latest version o ae branch, wioot needin tae wait fer somebodie tae get roond tae packagin it. MediaWiki will release faster, n it'll be easier fer ye tae update yer instawation, row back aen upgrade, or haun patches in. (O coorse aye mynd that offeecial stable releases ar less riskie.)

See Git fer mai details, parteecularlie fer makin contreebutions. Ablo ar some quick directions fer ae few commyn tasks.


Ye maun hae Git instawed afore ye can uise it. Thaur's monie differant waas tae get Git, dependin oan yer operatin system. Fer soorce n offeecial binaries, see Fer alternateeve waas tae instaw Git, uise yer faverite rake engine tae fynd instructions fer yer operatin system.

It is recommended that you have composer installed to download and install third party libraries, but not required.

Usin Git tae doonlaid MediaWiki


Ye can nou doonlaid MediaWiki core (phase3 on SVN) uisin Git, aes weel aes onie extension nou instawed oan the Wikimedia Foondation server cluster. Bi July 2013, aw extensions will either be available uisin Git or muived til alternate version control hosts.

The first step is tae clone the MediaWiki repositrie. This micht tak ae while.

In a terminal window, enter the following command:

git clone

This clones the entire MediaWiki core repositrie. The defaut 'branch' will be the cuttin-edge, deveeloper version o MediaWiki. Yince the repositrie is cloned, ye can easilie switch til differant branches or tags (see ablo), incluidin thae trackin stable versions o MediaWiki.

Download for development

Gif ye'v Deveeloper accessDeveloper access (n this is easie tae request):

git clone ssh://<USERNAME>

Fetch external libraries

Starting with MediaWiki 1.25, some external libraries that MediaWiki requires are no longer in this "core" git repository. We use composer to manage them. To install these needed libraries, you have a choice:

  • Download and install composer, switch to your core directory and then run composer install --no-dev. Note that if you have an existing composer.lock file you will need to run composer update --no-dev instead.
  • If you don't want to use composer, or if you want to use the same set of vendor libraries as used on the WMF production cluster, you can instead git clone to create a vendor/ directory inside the core folder of your MediaWiki installation. Make sure you use the right branch for your MediaWiki version (e.g. REL1_25 for 1.25).

Speceefic MediaWiki versions

WMF braunches

Remote braunches ar uised tae track the MediaWiki versions uised oan the Wikimedia Foondation server cluster. The latest micht na be entirely stable, bit thay receeve fair quick bug fixes n ar generallie stable enooch - efter aw, thir ar whit muckle waurks like Wikipædia ar uising. yince ae REL* braunch is considered 'stable', we 'tag' it n turn it intil ae taurbaw release.

Tae see whit braunches ar available, ye switch intil yer MediaWiki clone n issue the follaein commaunn:

git branch -r | sort -V

Muckle releases ar denoted bi "origin/REL<release number>", e.g. "origin/REL1_30". Tae switch til ae parteecular release braunch:

git checkout -b REL<release number> origin/REL<release number>

Fer example, tae switch til the nou stable version, Template:MW stable release nummer, enter:

git checkout -b REL1_30 origin/REL1_30
MediaWiki tags (stable version)

Alternateevelie, speceefic stable versions o MediaWiki ar trackt uisin 'tags'. Thir ar analogis til the taurbaw releases. Ye can see the versions available wi:

git tag -l | sort -V

Uisin non GNU sort commaunn, like oan Mac OS X, ye hae tae relie oan the guid auld separaters:

git tag -l | sort -n -t. -k1 -k2 -k3

Tae uise ae speceefeec tag:

git checkout <tag name>

Latest deveelopmant version o MediaWiki

The latest deveelopmant version o MediaWiki is trackt in the 'maister' braunch. This is whit's locallie checkt oot bi defaut whan ye first clone the MediaWiki repositrie. Gif ye'v switchy til anither braunch bit wid like tae switch back til uisin bleedin-edge MediaWiki, dae:

git checkout master

Keepin up til date

Gif ye'r uisin ae parteecular braunch or the deveelopmant version o MediaWiki, pickin up the latest chynges is reallie easie. Chynge intil yer MediaWiki clone directerie n issue the pul commaunn:

git pull

Aw o the latest chynges fer the braunch that ye'r uisin will be applied.

The new version of core may require newer versions of extensions and skins, so you must go into each extension and skin directory and update it with a command like git pull --recurse-submodules.

Foreby, efter updatin/upgradin ye shid rin the MediaWiki update.phpManual:update.php fae the commaunn line:

php maintenance/update.php

You also need to update mediawiki/vendor to any newer versions of required libraries, see #Fetch external libraries.

If you use MediaWiki-Vagrant, it offers a single command, vagrant git-update, that performs all these steps.

Switchin til ae differant version

Switchin til ae differant version o MediaWiki is faur simpler wi Git than wi SVN. Ilka o oor versions ar trackt aes braunches or tags. In order tae switch til yin o thir, aw that ye hae tae dae is 'checkoot' the parteecular braunch or tag that ye want fae wiin yer MediaWiki clone directerie:

git checkout <branchname>


git checkout <tag name>

The chynges will be applied autæmateeclie n ye'll be aw set tae gae.

Uisin Git tae doonlaid MediaWiki extensions

List of extensions in git


[$url Leet o extensions in git]
<EXT> shid be replaced wi the name o the extension that ye want tae doonlaid, wiout spaces. Fer Extension:TitleKeyExtension:TitleKey, it wid be TitleKey. (case sensiteeve!)

Doonlaid n clone aen extension fae Git:

cd /path/to/extensions
git clone<EXT>.git

Deveelopers clone wi:

git clone ssh://<USERNAME><EXT>.git

You can view extension source code in Phabricator's diffusion application, and at the URL:<EXT>;browse/master/

Doonlaid aw extensions

Gif ye prefer tae hae aw MediaWiki extensions that ar at checkt oot til yer machine, dae the follaein:

git clone
cd extensions
git submodule update --init --recursive

Tae update the extensions til thair latest versions, jist dae this:

cd /path/to/extensions
git pull
git submodule update --init --recursive

To track a specific branch:

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

If you only need a read-only checkout (for instance to grep or analyse all MediaWiki code), you can use the shared MediaWiki checkout on Labs, without downloading anything on your machines.

Remove an extension

Just remove the extension folder and remove the "require_once …" or "wfLoadExtension( … )" from LocalSettings.php.

Using Git to download MediaWiki skins

List of skins in git

MediaWiki 1.24 and later don't include skins in the Git download.

Follow the exact same procedure as for extensions (described in the previous section), but using skins rather than extensions in all URLs and paths.

Detailed installation instructions are available on each skin's page here on, for example see Skin:Vector#Installation. Instructions for all other skins are analogous.

See ava