从Git下载

From MediaWiki.org
Jump to: navigation, search
This page is a translated version of the page Download from Git and the translation is 75% 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 • ‎Հայերեն • ‎interlingua • ‎Bahasa Indonesia • ‎Interlingue • ‎italiano • ‎日本語 • ‎ქართული • ‎Taqbaylit • ‎한국어 • ‎kurdî • ‎Lëtzebuergesch • ‎lietuvių • ‎Bahasa Melayu • ‎Napulitano • ‎norsk bokmål • ‎नेपाली • ‎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 • ‎ייִדיש • ‎粵語 • ‎中文
从 MediaWiki 1.19beta2, 1.18.2, 1.17.3起, MediaWiki核心部分与扩展开始使用Git版本管理软件。对于较旧的版本,请使用Subversion

Git是一个分布式版本控制软件,它允许用户获得最新的软件分支而不必等待应用开发者封包。 MediaWiki可以更快的发行,同时让安装版本升级、回滚升级和提交Bug更方便。(当然官方发布版更稳定。)

查看Git了解更多,特别是如何提交你对MediaWiki的更改,下面是一些常见任务的指南。

开始之前

使用前你要先安装Git。有多种方式可以得到Git,取决于你的操作系统。要获得源代码和官方二进制包,签出(check out)git-scm.com。对于安装Git的其它方式,使用你最喜爱的搜索引擎来找到适合你的操作系统的安装指南。

建议使用composer下载安装第三方库,但非必需。

使用Git下载MediaWiki

下载

你可以在Gerritgerrit使用Git下载MediaWiki核心文件和在维基媒体基金会的服务器上使用的所有扩展。

第一步是克隆MediaWiki版本库,这需要一些时间。

在终端窗口中输入如下命令:

git clone https://gerrit.wikimedia.org/r/p/mediawiki/core.git --branch REL1_30 install-dir

这个操作用来克隆MediaWiki版本库到 core 文件夹,你可以添加参数使其克隆到其他目录(参见这些文档以获取更多信息)。 默认的 '分支'是最新的开发者版本master。当你完成克隆版本库后,你可以切换到不同的分支,或使用稳定版本。如果您希望减少克隆的修订版本数,添加--depth=1至上方命令即可。

To install into different directory, change that in the command line (for more info refer to these docs). Once the repository is cloned, you can easily switch to different branches or tags (see below), including those tracking unstable versions of MediaWiki. 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.

If you want to reduce the number of revisions that are cloned, add --depth=1 to the above command.

That the release branches have a bunch of Git submodules in them, for commonly-used extensions and skins (the master branch does not have these). To update the submodules, run:

cd install-dir
git submodule update --init

下载以进行开发

如果您有开发者权限(容易申请),然后您不需要通过https匿名克隆,而是需要提供您的ssh“<用户名>”克隆,这样您可以提交更改以供复核:

git clone ssh://<用户名>@gerrit.wikimedia.org:29418/mediawiki/core.git --branch REL1_30 install-dir

获取外部库

从MediaWiki 1.25开始,MediaWiki需要的一些外部库不再在这个“核心”git存储库中。

我们使用composer管理它们。 要安装下列的库,您可以:

请注意如果现在已存在composer.lock文件,您需要运行composer update --no-dev

MediaWiki标签(稳定版本)

另外,特定的MediaWiki稳定版本使用'标签'进行跟踪. 这和从 web 下载的版本类似. 使用以下的命令查看可用的版本:

git tag -l | sort -V

如果你使用非GNU的sort命令(例如在Mac OS X上使用),那么你必须依靠良好的旧式分隔符:

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

使用特定标签:

git checkout <标签名>


MediaWiki最新开发版

MediaWiki最新开发版使用'master'分支。这是你首次克隆MediaWiki版本库时的默认的本地签出操作。如果你曾切换到另一个分支,但是想切回MediaWiki的最前沿版本,那么请做如下操作:

git checkout master


保持最新

如果你正在使用MediaWiki的某个特定分支或者开发版本(master 分支),那么弄到最新的改变是非常容易的。切换到MediaWiki的克隆目录,然后使用git pull命令:

git pull

这个分支的最新更改会合并到你的版本库上。

新的核心版本可能需要更新的延伸和细节, 所以你必须进去延伸与细节的目录并用句子比方说git pull --recurse-submodules来上传。

在更新/升级以后如有需要,您应该运行MediaWiki update.phpManual:update.php命令行脚本以更新数据库表:

php maintenance/update.php

你也需要上传mediawiki/vendor给所有更新的版本的所需库,看#Fetch external libraries

如果你使用MediaWiki-Vagrant/zh,这提供单向的命令,vagrant git-update,这样施行所有阶段。

切换到不同的版本

切换到MediaWiki的不同版本,用Git比用SVN更容易。每个版本都有分支和标签来跟踪。为了切换到其中的一个版本,你所要做的无非就是在你的MediaWiki的克隆目录下“签出”(checkout)到你需要的特定分支或标签。

git checkout <分支名>

git checkout <标签名>

更改会自动应用,您就一切准备好了。

使用Git下载MediaWiki扩展

git中的扩展列表

下载扩展

<EXT>应替换为您希望下载的扩展名称,不带空格。例如Extension:TitleKey,它应为TitleKey。(区分大小写!)

从Git下载并克隆扩展:

cd /path/to/extensions
git clone https://gerrit.wikimedia.org/r/p/mediawiki/extensions/<EXT>.git --branch REL1_30

开发者使用以下命令:

git clone ssh://<用户名>@gerrit.wikimedia.org:29418/mediawiki/extensions/<EXT>.git --branch REL1_30

您可以在Phabricator的diffusion应用程序和URL中查看扩展源代码:

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

下载全部扩展

如果您愿意在您的机器上,拥有在gerrit.wikimedia.org签出的所有MediaWiki扩展,请输入以下命令:

git clone https://gerrit.wikimedia.org/r/p/mediawiki/extensions.git --branch REL1_30
cd extensions
git submodule update --init --recursive

此后,要更新所有扩展至它们的最新版本,只需输入:

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

要跟踪特定分支,请执行:

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

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.

如果您只需要一个只读的结帐(例如,打印或分析所有MediaWiki代码),您可以使用在实验室上共享的MediaWiki结帐,而无需在计算机上下载任何内容。

移除一个扩展

直接移除扩展文件夹,并从LocalSettings.php中移除“require_once …”或“wfLoadExtension( … )”。

使用Git下载MediaWiki皮肤

git中的所有皮肤列表

从Git下载的MediaWiki 1.24及以后的版本不再包含皮肤。

按照与扩展(前面部分所述)完全相同的过程,但在所有URL和路径中使用skin而不是extensions

详细的皮肤安装指南可以在各自的描述页上找到,例如Vector:Skin:Vector#Installation。其他皮肤的安装教程同理。

参见