Yardım:İçe aktar
Her ikisine de Special:Import aracılığıyla erişilen iki tür içe aktarma vardır:
- vikiarası içe aktarma: sayfaları doğrudan başka bir vikiden içe aktarın; hedef vikinin ayarları hangi kaynak vikilerin etkinleştirileceğini belirler; message with id 'import-interwiki-text' (talk) ortaya çıkar; "Sayfaları ad alanına aktar" seçeneğinden sonra bir hedef ad alanı belirtilebilir; "tümü" seçeneği aslında "orijinal ile aynı" anlamına gelir.
- içe aktarımı yükle: başka bir vikiden dışa aktarma sayfalarında üretilen özel XML biçiminde bir dosya içe aktarın; message with id 'importtext' (talk) görünür;
Bu eylemleri gerçekleştiren kullanıcı grupları hakkında bilgi için İçe aktarıcı sayfasına bakın.
Vikiarası içe aktarma
Birçok Wikimedia vikilerinde vikiarası içe aktarımı da devre dışı bırakılır, message with id 'importnosources' (talk) verir: "No wikis from which to import have been defined and direct history uploads are disabled." Ancak, commons:, foundation:, w:, cs: ve fr: olan sayfalar şu anda Meta'ya aktarılabilir ve Meta'dan sayfalar mw: klasörüne aktarılacak. İçe aktarma işlemi, sayfa geçmişine ve Special:Log/import sayfasına eklenir.
İçe aktarılan sayfa hedef vikideki mevcut sayfayla aynı ada sahipse, içe aktarılan sayfa daha yeniyse sayfanın üzerine yazılır (zaman damgalarına göre). İçe aktarma sırasında bir hata meydana gelirse, içe aktarmanın kısmen tamamlandığını görebilirsiniz (bazı sayfaların içe aktarıldığını ancak tümü değil). Sayfaların üzerine yazıldığı için, içe aktarmayı tekrar denemek sorun olmamalıdır.
Geçmiş bilgilerini eklemeyi belirttiyseniz, içe aktarılan sayfaların 'geçmiş' içinde ve kullanıcı katkılarında düzenlemeler hakkındaki bilgileri de görmelisiniz. Düzenlemeler 'son değişiklikler' içinde görünmeyecektir (ne orijinal düzenleme sırasında ne de içe aktarma sırasında konumlandırılmış değildir). Etki, tam geçmiş birleştirmeye benzer olacaktır ve daha sonra hangi düzenlemelerin içe aktarıldığını belirlemek oldukça zor olabilir.
İçe aktarılan bir sayfadaki şablonları içe aktaracak bir "Tüm şablonları dahil et" seçeneği vardır. Bu kullanılmazsa, hedef vikide aynı isimde bir şablon olmadığı sürece bunlar yeniden bağlanacaktır. Bu kullanılırsa, hedef vikideki aynı ada sahip şablonların üzerine yazılır ve içe aktarma işlemi yalnızca içe aktarılan sayfadaki şablonları değil, aynı zamanda bu şablonlar içinde kullanılan tüm şablonları da içerecektir. Özel olarak onları çevreleyen bir sayfa oluşturarak ve seçenek açıkken bu sayfayı içe aktararak bir sayfa koleksiyonunu içe aktarmak mümkündür. Ancak, bu çok dikkatli yapılmalıdır veya tekrar istenenden çok daha fazlasının içe aktarılmasına neden olabilir, dönüştürülen sayfalardaki tüm şablonları ve bu şablonların içine yerleştirilmiş tüm şablonları içe aktaracaktır.
Kullanışlı içe aktarma uygulamaları şunları içerir:
- bir sayfa başka bir vikiye taşındığında ve daha sonra orada düzenlendiğinde, geçmişe hedef vikide birlikte sahip olun; bu özellikle, sayfa hareketleri vb. nedeniyle kaynak sayfanın bulunması zorlaşırsa kullanışlıdır.
- bir sayfa başka bir vikiye taşındığında ve kaynak vikide silindiğinde, geçmişi koruyun.
- başka bir viki/alt etki alanında bulunan şablonlara sahip olmak için.
- çok dilli içeriği dil alt alanları arasında taşımak için wikisource ve wiktionary gibi belirli projelerde.
Uygulama
Vikinizin vikiarası içe aktarmayı doğru yapılandırılıp yapılandırılmadığını ve yapılandırıldığı yerde hangi viki için API kullanarak vikinizi sorgulayabilirsiniz.
- <wiki url>/w/api.php?action=paraminfo&modules=import
Yapılandırma
<param name="interwikisource" description="Vikiarası içe aktarmalar için: içe aktarılacak wiki"> … olarak ifade edilir
Alternatif olarak, http://noc.wikimedia.org/conf/highlight.php?file=InitialiseSettings.php adresinden genel yapılandırmaları kontrol edebilir ve
wgImportSources bölümüne bakabilirsiniz.
Yapılandırılmış bir vikiarası içe aktarma yoksa, yerel topluluğunuzun, vikiarası içe aktarmanın yapılandırılması ve hangi vikilerden içe aktarmak isteyebileceğinizi belirlemek için fikir birliğine varmasını isteyin. Yapılandırma değişiklikleri istekleri Phabricator: içinde yapılmalıdır. Hata isteğinizde topluluğunuzun tartışmasına bağlanmanız beklenir.
Yerel vikinizdeki bir API sorgusu, kullanıcı grubu haklarını da görüntüleyecektir,
<add> etiketini kontrol edin
- <wiki url>/w/api.php?action=query&meta=siteinfo&siprop=usergroups
Vikiarası içe aktarma haklarının atanması
Vikiarası haklarının çoğu, topluluklarının vikisinde başarılı bir tartışmanın ardından kullanıcılara atanır ve ardından Kâhya talebi/İzin sayfasında kâhyalara bir istek gelir. Bazı vikiler, yerel bürokratların bu hakkı devredebilmesini talep etti ve bu hakkı oradaki mevcut durum için vikinize danışın.
İçe aktarma yüklemesi
Nasıl dışa aktarılacağı ve dışa aktarılan sayfaların biçimi Yardım:Dışa aktar sayfasında açıklanmaktadır. Normalde herhangi bir kullanıcı viki sayfalarını bir dosyaya aktarabilir, ancak sayfaları bir dosyadan bir vikiye aktarmak için o vikide 'Hizmelti' ayrıcalıklarına sahip olmanız gerekir. Dolayısıyla, kendi MediaWiki kurulumunuz varsa, orada 'Special:Import' sayfasını görebilmelisiniz. Wikimedia Vakfı viki projeleri ailesi içinde, yalnızca
importupload kullanıcı hakkına sahip kullanıcılar sayfaları bir dosyadan bir vikiye aktarabilir; bu yalnızca "içe aktarıcı" grubun üyelerini ve kâhyaları içerir.
Viki sayfalarını bilgisayarınızdan içe aktarmak için, dosyayı yerel dosya sisteminizde bulmak için göz at'a tıklamanız yeterlidir.
İçe aktarma dosyasını düzenleme
Yüklemenin içe aktarılması durumunda, okunabilir basit dosya formatı nedeniyle, XML dosyası dışa aktarma ve içe aktarma arasında kolayca düzenlenebilir. Bu dikkatli ve dürüst bir şekilde yapılmalıdır, önceden yapılmış düzenlemeler yapılabilir ve yanlış kullanıcı adları kullanılabilir ve silme ile birlikte "değişiklik geçmişi" yapılabilir. Bu düzenlemenin uygulamaları şunları içerir:
- düzenleme özetine içe aktarmayla ilgili bir not eklemek
- ad çakışmaları önlemek için kullanıcı adlarını ve/veya sayfa adlarını değiştirmek (yalnızca başlık etiketleri arasında ve kullanıcı adı etiketleri arasında veya ayrıca bağlantılarda ve imzalarda)
- ad alanı adlarını genel veya uygulanabilir adlarla değiştirmek
Sayfanın iki sürümü aynı zaman damgasına sahipse (biri önceden var olan bir sürümle aynı zaman damgasıyla yüklendiğinden), sonraki (içe aktarılan) sürümün düzenleme geçmişinde görüneceğini, ancak makalenin kendisinde görünmeyeceğini unutmayın.
Visual Studio .NET C# içinde bu XML dosyalarıyla çalışma örneği için mw:Manual:XML Import file manipulation in CSharp sayfasına bakın.
Geçmişleri ve diğer komplikasyonları birleştirme
Ayrıca bakınız mw:Manual:Importing XML dumps#Troubleshooting.
İçe aktarma, geçmiş bilgilerini içeriyorsa ve düzenlemeler, içe aktarma projesinde başka biri tarafından kullanılan bir kullanıcı adını içeriyorsa, karşıya yükleme içe aktarma işlemi uygulanmalı ve XML dosyasındaki kullanıcı adının geçtiği yerler önce başka bir adla değiştirilmelidir. İçe aktarma projesinde henüz kullanıcı adı kullanılmadıysa, kullanıcı katkıları yine de kullanılabilir, ancak bir hesap otomatik olarak oluşturulmaz.
Tıpkı bir bağlantıda bir sayfaya başvurulduğunda ve/veya bir URL yerleştirildiğinde olduğu gibi, genel ad alanı adları otomatik olarak dönüştürülür ve bir önek bir ad alanı adı değilse, sayfa ana ad alanına ulaşır. Ancak, ör. "Meta:" vikiarası bağlantı için bu öneki kullanan bir projede göz ardı edilebilir (bırakılabilir). İçe aktarmadan önce bunu XML dosyasında "Project:" olarak değiştirmek istenebilir.
Bir sayfa adı zaten mevcutsa, bu ada sahip bir sayfanın revizyonlarını içe aktarmak, sayfa geçmişlerinin birleştirilmesine neden olur. Sayfa geçmişinde mevcut iki revizyon arasına bir revizyon ekledikten sonra, bir sonraki düzenlemeyi yapan kullanıcı tarafından yapılan değişikliğin gerçekte olduğundan farklı göründüğüne dikkat edin: kullanıcı tarafından yapılan gerçek değişikliği görmek için farkın alınması gerekir zaten var olan iki revizyon arasında, eklenen revizyona göre fark değil. Bu nedenle, gerçek sayfa geçmişini yeniden oluşturmak dışında bu yapılmamalıdır.
Aynı sayfanın, tarihin ve saatin (tam saniyeye kadar) bir revizyonu zaten mevcutsa, revizyon içe aktarılmaz. Uygulamada bu, yalnızca revizyon zaten içe aktarılmışsa (mevcut vikiye veya daha önce dışa aktarmanın yapıldığı vikiye veya her ikisi de üçüncü bir siteden içe aktarılmışsa) gerçekleşir.
Bir düzenleme özeti başka bir sayfaya atıfta bulunabilir ve muhtemelen bağlantı verebilir. Bu, sayfa içe aktarıldığında ancak hedef sayfanın alınmadığı zaman kafa karıştırıcı olabilir.
Düzenleme özeti, sayfanın içe aktarıldığını otomatik olarak göstermez, ancak içe aktarmadan önce XML dosyasındaki düzenleme özetlerine eklenebilecek içe aktarma yükleme durumunda. Bu, bazı olası belirsizlik ve/veya kafa karışıklığı kaynaklarını önleyebilir. XML dosyasını bul/değiştir ile düzenlerken, düzenleme özetlerine bir metin eklemenin, zaten bir düzenleme özeti, dolayısıyla XML dosyasındaki yorum etiketleri ve bu etiketleri olmayanlar arasında ayrım yapılmasını gerektirdiğine dikkat edin. Birden fazla yorum etiketi çifti varsa, yalnızca sonuncusu etkilidir.
Kullanıcı katkıları
Kullanıcı adı çakışmaları için hükümler olmadan, kullanıcı katkıları listesi şunları gösterir:
- projede ilgili kullanıcı adı altında kayıtlı kişi tarafından yapılan düzenlemeler
- sayfaların içe aktarıldığı her viki için, içe aktarmadan önce içe aktarılan sayfaların, kaynak projede ilgili kullanıcı adına sahip olan kullanıcı tarafından yapılan düzenlemeleri
İçe aktarma sırasında sayfa henüz hedef sitede mevcut değilse, ikisi içe aktarma zamanı ile düzenleme zamanı karşılaştırılarak ayırt edilebilir.
Kullanıcı sayfası ve kullanıcı mesaj sayfasının sayfa kenar boşluğunda bir kullanıcı katkıları bağlantısı yoksa, kullanıcı kaydedilmez, bu nedenle tüm düzenlemeleri içe aktarılır.
Büyük ölçekli aktarım
Büyük ölçekli bir aktarım için, yeterli sistem ayrıcalıklarına sahip biri, verileri sunucu içinde taşıyabilir; bu, büyük XML dosyalarını sunucudan kullanıcının yerel bilgisayarına ve ardından tekrar sunucuya göndermekten daha pratiktir.
Büyük dosyalar iki nedenle reddedilebilir. PHP yapılandırma dosyası php.ini'de bulunan PHP yükleme sınırı:
; Maximum allowed size for uploaded files. upload_max_filesize = 20M
Ve ayrıca gizli değişken, girdi formundaki boyutu sınırlandırır. MediaWiki kaynak kodunda bulundu, includes/specials/SpecialImport.php:
<input type='hidden' name='MAX_FILE_SIZE' value='20000000' />
Belki php.ini'de aşağıdaki dört yönergeyi değiştirmelisiniz:
; Maximum size of POST data that PHP will accept. post_max_size = 20M
max_execution_time = 1000 ; Maximum execution time of each script, in seconds max_input_time = 2000 ; Maximum amount of time each script may spend parsing request data
; Default timeout for socket based streams (seconds) default_socket_timeout = 2000