WordPress Core'a Göndermek İçin Bir Yama Oluşturmanın En Kolay Yolu?


13

Trac üzerinde WordPress çekirdeği (biri kullanılmış) için birkaç düzeltme eki gönderdim , ancak bunu her düşündüğümde saçmaladım çünkü bunu yapmak benim inanılmaz derecede sıkıcı.

Birisi lütfen çekirdek için bir yama göndermek için gerekli adımları ve daha sonra bu kadar sıkıcı olmamak için süreci düzene sokmanın en iyi yolunu detaylandırabilir mi? Şu anda Mac OS X ve PhpStorm çalışıyorum ama bir kabuk komut dosyası en kolay olabilir düşünüyorum? Ya da belki tüm rote çalışır bir PHP Script?

Sorunlardan biri, neyle başlamam gerektiğini tam olarak anlamadım. Bagaj ile başlayabilir miyim? Her yama oluşturmak istediğimde yeni bir kopya indirip bu kopyaya kodumu eklemem / düzenlemem gerekiyor mu?

Yine, SVN ile çalışırken ve yama gerçekten mevcut yetenek setimin dışında ve bunu değiştirmek istiyorum. Size umut WordPress yama uzmanları kurtarmaya gelebilir. Şimdiden teşekkürler.

GÜNCELLEME:

@ Hakre'nin cevabından sonra soruya daha fazla şey eklemeliyim:

  • Eski sürümden yamalar oluşturabilir miyim yoksa gövde mi kullanmalıyım?
  • Yayınlanan sürümü (3.0.1) kullanarak bir proje üzerinde çalışıyorsam, onu değiştirebilir ve çekirdek için bir yama oluşturabilir miyim yoksa bozulmamış ve yeni bir gövde kopyasını indirip ayarlayıp yeni değişikliklerimi orada yapmam gerekir mi?
  • Kabuk betikleriyle yapabilir miyim, böylece giriş bilgisini kodun içine kodlayabilir ve sadece ihtiyacım olan her şeyi yeniden oluşturmak ve / veya yamayı oluşturmak için komut dosyasını çalıştırabilir miyim?
  • Ve tuzaklar neler?

Tüm bu sorular, WordPress'in SVN'sinin nasıl çalıştığını bilenler tarafından varsayılıyor gibi görünüyor ve bu nedenle herhangi bir tartışmada her zaman göz ardı ediliyor.

Yanıtlar:


8

Bir yama oluşturmanın en kolay yolu burada açıklanmaktadır:

http://wordpress.org/download/svn/

Eski sürümden yamalar oluşturabilir miyim yoksa gövde mi kullanmalıyım?

Düzeltme ekini, uygulanmasını istediğiniz aynı sürüme karşı oluşturmanız gerekir.

Başka bir deyişle, WP 3.0.1'e karşı oluşturulan bir yamanın WP 3.1-alfa'ya temiz bir şekilde uygulanmasını beklemeyin.

Yayınlanan sürümü (3.0.1) kullanarak bir proje üzerinde çalışıyorsam, onu değiştirebilir ve çekirdek için bir yama oluşturabilir miyim yoksa bozulmamış ve yeni bir gövde kopyasını indirip ayarlayıp yeni değişikliklerimi orada yapmam gerekir mi?

Her yeni yama için yeni bir kurulum yapmanız gerekmez. Sadece bozulmamış bir kopyaya geri dönmek için svn revert komutunu kullanabilirsiniz .

Ayrıca, veritabanının her seferinde temiz olması gerekmez. Aslında, canlı bir ortamı simüle etmek için bazı değişiklikleriniz varsa daha iyidir.


1
Gee, çalışma kopyamızı aldıktan sonra bir yama oluşturmak çok kolay: svn diff > my-patch.patchme gusta!
brasofilo

5

Eclipse PDT + Subclipse + X

SVN Entegrasyonu olan Eclipse kullanıyorum . Bence PHP Strom da bunu yapıyor. Temelde WordPress svn deposundan bir ödeme olan gövde projelerimden birine giriyorum.

Sonra düzenlemem gereken dosyaları düzenlerim. Eclipse değiştirilmiş olanları gösterir, bir dizini sağ tıklatıp Team->Create Patchseçerim ve diff için seçebileceğim tüm değiştirilmiş dosyaları sunarım. Sonra panoya kopyalama veya diske kaydetme arasında seçim yapabilirim. Bilet numarasıyla oluşturduğum tüm yamaları sabit diskimdeki bir dizine kaydediyorum.

Sonra Tarayıcıya girip yamayı yüklerim.

Bunu daha da rahat olan bir MyLyn Trac entegrasyonu ile de yapabilirim , ancak trac'ta XML-RPC'ye ihtiyacınız var, böylece iletişim kurmak için bir trac yöneticisine ihtiyacınız var. Oldukça iyi çalışıyor ama her projede yapılandırılmamış ve çoğunlukla bilet yıkımları yaptığımda kullanıyorum.

Yani gerçekten, eğer Eclipse ödeme. Çok büyük ve yavaş olduğundan büyük bir bilgisayara ihtiyacınız var. Küçük olanlarda Fedora Linux ile iyi deneyimler yaşadım. Tutulma iyi çalışıyor. PHP Fırtınası hayranı olduğunuzu biliyorum, ama, Eclipse'imi gerçekten seviyorum ve gerçekten sallanan birçok uzantı ile geliyor. PHP için bile :). Ancak PHP Storm temel olarak ödeme / yama işlerini de yapmalıdır.

WordPress Eclipse 1x1

Ah ve işletim sistemimde kullandığım tüm dizinleri kaydeden bir araç var. Bu yüzden yamaları kaydedebilir ve dosyaları hızlı bir şekilde yükleyebilirim, çünkü bunlar her zaman son listedeki aynı dizinden.

Entegrasyon Örneği: PHP Code Sniffer, Eclipse ve WordPress


Cevapladığınız için teşekkürler. Eclipse'i denedim ve nefret ettim. Çok tepkisiz ve sadece arayüzü beğenmedim. Eclipse'nin bir seçenek olduğu diğerleri için iyi bir cevap ama cevabım ihtiyaçlarımı karşılamıyor. Oy vereceğim ve oy vereceğim ama IDE'ye bağlı olmayan, aynı zamanda süreci daha iyi açıklayan bir çözümü tercih ederim.
MikeSchinkel

Ayrıca PhpStorm'un tam SVN (ve Git) entegrasyonuna sahip olduğunu söylemek istedim, ancak entegrasyonu gerçekten bir kullanıcının her menünün ne gibi bir etki yaratacağını tam olarak anlamasını gerektirir, çünkü onlarla nasıl çalışılacağı konusunda çok az rehberlik sunar ( yardım dosyalarında ancak içeriğe duyarlı olmadıklarından ve SVN + Git PhpStorm'a büyük bir katkı sağladığı için hepsinde tamamen kaybolmak kolaydır.) Bu yüzden onu temelde anlamak ve IDE'lere geçmek zorunda değilim Bunu yapmaktan hoşlanmıyorum.
MikeSchinkel

@MikeSchinkel - SVN sizin için çok karmaşıksa (hangi SVN + Editor aromasına bakılmaksızın), wordpress projesi için yamalar oluşturamazsınız. Temel olarak UI'nizin SVN arayüzünden hoşlanmıyorsanız, komut satırını öğrenin. Ama yine de öğrenmelisin. Btw gibi herhangi bir editör ile SVN kullanabilirsiniz .. Ben bir SVN gövde copyrunning ve yamalar oluşturmak ve onları test etmek için bir web sunucusunda yapılandırılmış var. Bir yama yaptıktan sonra yerel kopyamdan yerel değişiklikleri (geri döndür) kaldırıyorum ve sonra diğer yamalar için devam edebilirim. Her zaman işe yarar. Söylenecek başka ne var?
hakre

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.