Git'ten yükle
Git bir dağıtılmış sürüm kontrol sistemidir. Kaynak kodunun en son sürümünü, tüm dalları ve etiketli sürümleri indirmenize izin verir.
Bir geliştiriciyseniz ve yamaları göndermek istiyorsanız Git'ten indirmeniz gerekir.
Yalnızca MediaWiki ve uzantıları geliştirmek istemiyorsanız, bunun yerine kararlı tarball sürümlerini indirin yükleyin.
Daha fazla ayrıntı, özellikle de katkıda bulunmak için Git bölümüne bakın. Aşağıda birkaç ortak görev için bazı hızlı talimatlar verilmiştir.
Ön gereksinimler
Kullanmadan önce Git'in yüklü olması gerekir. İşletim sisteminize bağlı olarak Git'i edinmenin birçok farklı yolu vardır. Gerrit/Eğitim#Git kurun'u takip edin veya favori arama motorunuzu kullanın.
Üçüncü taraf kütüphanelerini indirip yüklemek için Composer yüklemeniz önerilir, ancak gerekli değildir.
MediaWiki'yi yüklemek için Git kullanmak
İndir
MediaWiki çekirdeğini Git'i ayrıca şu anda Wikimedia Foundation sunucu kümesinde yüklü olan tüm uzantıları ve Gerrit 'te barındırılan diğer birçok uzantıyı indirebilirsiniz.
İlk adım, MediaWiki çekirdek deposunu klonlamaktır. Bu işlem biraz zaman alacaktır.
Geliştirme için indirin
MediaWiki'nin en son geliştirme sürümü 'ana' dalda izlenir.
Önce bir ssh kullanıcı adınız olması için bir geliştirici hesabı oluşturduğunuzdan emin olun.
Daha sonra terminal penceresinde deponun klonunu oluşturmak için aşağıdaki komutu girin:
git clone https://gerrit.wikimedia.org/r/mediawiki/core.git mediawiki
Bu ana şubeyle senkronize edilen tüm MediaWiki çekirdek deposunu mediawiki
adlı bir alt dizine klonlar.
Farklı bir dizine kurmak için, komut satırında bunu değiştirin (daha fazla bilgi için bu dokümanlara bakın).
Depo klonlandıktan sonra, farklı dallara veya etiketlere geçebilirsiniz.
Geliştirme dalı, master
, MediaWiki'nin en son geliştirici sürümüdür; üretim için ana kodu kullanmamalısınız hiçbir koşulda istikrarlı olmadığı içindir.
Sabit bir dal indirin
Yazılım düzeltme ekleri geliştirmek istemiyorsanız, ancak kararlı sürüm dalını 1.43 anonim olarak klonlamak istiyorsanız, bunun yerine şu komutu kullanın:
git clone https://gerrit.wikimedia.org/r/mediawiki/core.git --branch REL1_43 mediawiki
Yavaş bir internet bağlantınız varsa ve klonlanan düzeltme sayısını azaltmak istiyorsanız, git clone
komutuna --depth=1
ekleyin.
MediaWiki etiketleri (kararlı sürüm)
Alternatif olarak, MediaWiki'nin belirli kararlı sürümleri 'etiketler' kullanılarak izlenir. Bunlar tarball bültenlerine benzer. Şu anda bunlar 1.43.1 (kararlı), 1.43.1 (LTS) ve 1.39.12 (eski LTS).
Kullanılabilir tüm etiketleri şununla görebilirsiniz:
git tag -l | sort -V
Belirli bir etiketi kullanmak için, ör. En son kararlı sürüm:
git checkout 1.43.1
Git alt modüllerini güncelleyin
Dallarda, genel olarak kullanılan uzantılar ve kaplamalar için bir grup Git alt modülü vardır (ana dalda bunlar yoktur). Alt modülleri güncellemek için şunu çalıştırın:
The master
branch does not have these.
Alt modülleri güncellemek için şunu çalıştırın:
cd mediawiki
git submodule update --init --recursive
Harici kütüphaneleri al
MediaWiki, hepsi MediaWiki dizinizdeki vendor/
dizininde bulunan harici PHP kitaplıklarını yönetmek için Composer öğesini kullanır.
Bu gerekli kütüphaneleri kurmak için bir seçeneğiniz vardır:
- Besteci PHAR'ı indirip yükleyin, isteğe bağlı olarak composer.phar dosyasını işletim sisteminizde belirtildiği şekilde yeniden adlandırın ve ardından MediaWiki dizininizden
composer update --no-dev
çalıştırın. Bu önerilen yaklaşımdır.- Varsayılan PHP CLI sürümü web sunucusunun PHP sürümüyle uyuşmuyorsa, örneğin
php7.4 composer.phar update --no-dev
ile belirtin.
- Varsayılan PHP CLI sürümü web sunucusunun PHP sürümüyle uyuşmuyorsa, örneğin
- Veya, Composer'ı kullanmak istemiyorsanız veya WMF üretim kümesinde kullanılanla aynı satıcı kitaplığı kümesini kullanmak istiyorsanız, bunun yerine MediaWiki yüklemenizin çekirdek klasörü içinde bir
vendor/
dizini oluşturabilirsiniz:git clone https://gerrit.wikimedia.org/r/mediawiki/vendor.git
- Eğer herhangi bir eklentinizin kendi Composer gereksinimleri varsa, o zaman "bu seçeneği kullanamazsınız".
MediaWiki 1.25'ten önce, çekirdek havuzunda harici kütüphaneler tutuldu ve paket yöneticisi gerekli değildi.
Güncel kalmak
MediaWiki’nin belirli bir dalını veya geliştirme sürümünü ("ana" dalı) kullanıyorsanız, en son değişiklikleri almak nispeten kolaydır. MediaWiki klon dizininize geçin ve şu komutu verin:
git pull
Kullanmakta olduğunuz şube için yapılan son değişikliklerin tümü uygulanacaktır.
Çekirdeğin yeni sürümü daha yeni uzantı ve kaplama sürümleri gerektirebilir, bu nedenle her bir uzantı ve kaplama dizinine girmeli ve git pull --recurse-submodules
gibi bir komutla güncellemelisiniz.
Ayrıca, gerekli kütüphanelerin daha yeni sürümleriyle vendor/
güncellemeniz gerekir.
Bu genellikle aşağıdaki Composer komutunu çalıştırmak anlamına gelir, ancak daha fazla ayrıntı için yukarıdaki #Fetch harici kitaplıkları bölümüne bakın:
composer update --no-dev
Kodu ve gerekli kitaplıkları güncelledikten/yükselttikten sonra, veritabanı tablolarını gerektiği gibi güncellemek için MediaWiki update.php
komut satırı komut dosyasını çalıştırmalısınız:
php maintenance/run.php update
MediaWiki-Vagrant kullanıyorsanız, tüm bu adımları yerine getiren tek bir komut, vagrant git-update
sunar.
Farklı bir sürüme geçme
Sürümlerimizin her biri dal veya etiket olarak izlenir. Farklı bir sürüme geçmek için (örneğin master
dalından farklı bir dal veya etikete), MediaWiki klon dizininizden istediğiniz dal veya etiketini kontrol edin:
git checkout <dal_adı>
veya
git checkout <etiket adı>
Değişiklikler otomatik olarak uygulanacak ve hepiniz başlayacaksınız.
MediaWiki uzantılarını indirmek için Git'i kullanma
Bir eklenti indir
- Sonraki komutlarda,
<EXT>
yerine, indirmek istediğiniz uzantının adını boşluk bırakmadan yazınız. Extension:TitleKey için bu TitleKey olurdu. (harfe duyarlı!)
Git'ten bir uzantı indirin ve klonlayın:
Geliştirici hesabınızla, ana dalı almak için şu komutları kullanın:
cd /path/to/extensions
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/<EXT>
Bunun yerine kararlı bir sürüm dalını klonlamak ve kontrol etmek için şu komutları kullanın:
cd /path/to/extensions
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions/<EXT> --branch REL1_43
Uzantı kaynak kodunu Gerrit'in gitiles uygulamasında ve URL adresinde görebilirsiniz:
https://gerrit.wikimedia.org/g/mediawiki/extensions/<EXT>/+/HEAD
Tüm eklentileri indir
gerrit.wikimedia.org olan tüm MediaWiki uzantılarının makinenize teslim edilmesini tercih ediyorsanız, aşağıdakileri girin:
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions
Veya, bunun yerine kararlı sürümlerin dalını kontrol etmek için şu komutu kullanın:
git clone https://gerrit.wikimedia.org/r/mediawiki/extensions --branch REL1_43
git clone
komutunu çalıştırdıktan sonra şu komutlarla devam edin:
cd /path/to/extensions
git submodule update --init --recursive
İstediğiniz zaman, tüm uzantıları ilgili dalını en son sürümlerine güncellemek için şunu girin:
cd /path/to/extensions
git pull
git submodule update --init --recursive
Yeni bir sürümden sonra olduğu gibi farklı bir şubeye geçmek için:
git submodule foreach 'git checkout -b REL1_42 origin/REL1_42 || :'
Unutmayın, yalnızca uzantı sürümlerini MediaWiki ve diğer sürümleriyle aynı sürümden kullanmanız gerekir.
Ana dalı izlemek için:
git submodule foreach 'git checkout -b origin/master || :'
Lütfen üretim için ana kodu kullanmamalısınız dengesiz olarak kabul edilmemesi gerektiğini unutmayın.
Yalnızca salt okunur bir kullanıma ihtiyacınız varsa (örneğin tüm MediaWiki kodlarını greplemek veya analiz etmek için), makinelerinizden hiçbir şey indirmeden paylaşılan MediaWiki satın alma işlemini kullanabilirsiniz.
Bir eklentiyi kaldır
- "
require_once …
" veya "wfLoadExtension( … )
" ileLocalSettings.php
üzerinden kaldırın - Uzantıyı
composer.local.json
cinsinden gösteren satırları kaldırın (genellikle "extra → merge-plugin → include" bölümünde) - Uzantının dizinini
install-dir/extensions/
ile kaldır
MediaWiki derilerini indirmek için Git'i kullanma
MediaWiki 1.24 ve sonraki sürümleri Git indirme işlemine kaplama içermez.
Uzantılarla aynı prosedürü uygulayın (önceki bölümde anlatıldığı gibi), ancak tüm URL ve yollarda skins
yerine extensions
kullanın.
Ayrıntılı kurulum talimatları burada her derinin sayfasında MediaWiki.org adresinde bulunabilir, örneğin bakınız Görünüm:Vektör#Kurulum. Diğer tüm kaplamalar için talimatlar benzerdir.
Ayrıca bakınız
Appendix
21 Mart 2019, 14:26 itibarıyla yapılan revizyon gerrit.wikimedia.org'a bağlantı verme standardını değiştirdi:
itibaren:
- gerrit.wikimedia.org/r/p/mediawiki
ile:
- gerrit.wikimedia.org/r/mediawiki