Cara termudah untuk Membuat Patch untuk Pengajuan ke WordPress Core?

13

Saya telah mengirimkan beberapa tambalan untuk inti WordPress di Trac (salah satunya telah digunakan) tetapi setiap kali saya berpikir untuk melakukannya, saya merasa ngeri karena pengaturan saya untuk melakukannya sangat membosankan.

Bisakah seseorang tolong jelaskan langkah-langkah yang diperlukan untuk mengirimkan tambalan untuk inti, dan kemudian cara terbaik untuk merampingkan proses sehingga tidak terlalu membosankan? Saya bekerja Mac OS X dan PhpStorm saat ini tapi saya pikir skrip shell mungkin paling mudah? Atau mungkin Skrip PHP yang berfungsi baik?

Salah satu masalahnya adalah saya tidak sepenuhnya mengerti apa yang harus saya mulai. Apakah saya mulai dengan trunk? Apakah saya harus mengunduh salinan baru dan menambah / mengedit salinan itu dengan kode saya setiap kali ingin membuat tambalan?

Sekali lagi, sementara saya telah melakukannya, bekerja dengan SVN dan menambal benar-benar di luar keahlian saya saat ini dan saya ingin mengubahnya. Semoga Anda ahli patching WordPress bisa datang menyelamatkan saya. Terima kasih sebelumnya.

MEMPERBARUI:

Setelah jawaban @ hakre, saya pikir saya harus menambahkan lebih ke pertanyaan:

  • Bisakah saya membuat tambalan dari versi yang lebih lama atau saya harus menggunakan trunk?
  • Jika saya sedang mengerjakan sebuah proyek menggunakan versi yang dirilis (3.0.1) dapatkah saya memodifikasinya dan membuat tambalan untuk inti atau apakah saya harus mengunduh dan mengatur salinan asli dan baru dari bagasi dan baru membuat modifikasi saya di sana?
  • Dapatkah saya melakukan dengan skrip shell sehingga saya dapat menyandikan login ke skrip dan menjalankan skrip untuk menciptakan kembali semua yang saya butuhkan dan / atau untuk membuat tambalan?
  • Dan apa jebakannya?

Semua pertanyaan ini tampaknya diasumsikan oleh mereka yang tahu cara kerja SVN WordPress dan karena itu selalu tersinggung dalam diskusi apa pun.

MikeSchinkel
sumber

Jawaban:

8

Cara termudah untuk membuat tambalan dijelaskan di sini:

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

Bisakah saya membuat tambalan dari versi yang lebih lama atau saya harus menggunakan trunk?

Anda harus membuat tambalan terhadap versi yang sama dengan yang Anda inginkan.

Dengan kata lain, jangan berharap tambalan yang dibuat terhadap WP 3.0.1 berlaku bersih pada WP 3.1-alpha.

Jika saya sedang mengerjakan sebuah proyek menggunakan versi yang dirilis (3.0.1) dapatkah saya memodifikasinya dan membuat tambalan untuk inti atau apakah saya harus mengunduh dan mengatur salinan asli dan baru dari bagasi dan baru membuat modifikasi saya di sana?

Anda tidak perlu menyiapkan instalasi baru untuk setiap tambalan baru. Anda bisa menggunakan svn revert untuk kembali ke salinan asli.

Juga, database tidak harus bersih setiap kali. Sebenarnya, lebih baik jika Anda memiliki beberapa modifikasi, untuk mensimulasikan lingkungan hidup.

scribu
sumber
1
Astaga, sangat mudah untuk membuat tambalan setelah kita memiliki copy pekerjaan kami svn diff > my-patch.patch:, saya gusta!
brasofilo
5

Eclipse PDT + Subclipse + X

Saya menggunakan Eclipse yang memiliki Integrasi SVN . Saya pikir PHP Strom juga melakukannya. Saya masuk ke salah satu proyek trunk saya yang pada dasarnya checkout dari repositori WordPress svn.

Kemudian saya mengedit file yang perlu saya edit. Eclipse menunjukkan yang dimodifikasi, saya klik kanan direktori, pilih Team->Create Patchdan saya ditawari semua file yang diubah saya dapat memilih untuk diff. Lalu saya bisa memilih antara menyalin ke clipboard atau menyimpan ke disk. Saya menyimpan semua tambalan yang saya buat dengan nomor tiket ke direktori yang saya miliki di harddisk saya.

Lalu saya masuk ke Browser dan mengunggah tambalan.

Saya juga bisa melakukan ini dengan integrasi MyLyn Trac , yang bahkan lebih nyaman, tetapi Anda memerlukan XML-RPC di trac sehingga Anda memerlukan admin trac untuk dihubungi. Ini berfungsi cukup baik tetapi saya tidak mengonfigurasinya di setiap proyek dan menggunakannya terutama ketika saya membuat rundown tiket.

Jadi sungguh, checkout Eclipse jika Anda suka. Ini besar dan lambat sehingga Anda membutuhkan komputer besar. Pada yang kecil saya membuat pengalaman yang baik dengan Fedora Linux. Eclipse berjalan dengan baik di atasnya. Saya tahu Anda penggemar PHP Storm tetapi, yah, saya sangat suka Eclipse saya dan ia datang dengan banyak ekstensi yang sangat keren. Bahkan untuk PHP :). Tapi PHP Storm pada dasarnya harus melakukan checkout / patch juga.

WordPress Eclipse 1x1

Ah dan saya memiliki alat di OS saya yang menyimpan semua direktori yang saya gunakan. Jadi saya dapat menyimpan tambalan dan mengunggah file dengan cepat karena mereka selalu dari direktori yang sama dengan yang saya miliki di daftar terakhir.

Contoh Integrasi: Sniffer Kode PHP, Eclipse dan WordPress

hakre
sumber
Terimakasih telah menjawab. Saya mencoba Eclipse dan membencinya. Terlalu tidak responsif dan saya hanya tidak suka antarmuka. Jadi ini adalah jawaban yang baik untuk orang lain yang Eclipse adalah pilihan tetapi jawaban Anda tidak memenuhi kebutuhan saya. Saya akan memberikannya dan memberikan suara, tetapi saya lebih suka solusi yang tidak terkait dengan IDE, juga solusi yang lebih baik menjelaskan prosesnya.
MikeSchinkel
Juga saya bermaksud mengatakan bahwa PhpStorm memiliki integrasi SVN (dan Git) penuh tetapi integrasi itu benar-benar mengharuskan pengguna untuk sepenuhnya memahami efek apa yang akan dimiliki setiap menu karena ia menawarkan sedikit-ke-tidak ada panduan tentang cara bekerja dengan mereka (ada banyak dalam file bantuan tetapi karena mereka tidak peka konteks dan karena SVN + Git adalah tambahan besar untuk PhpStorm, mudah untuk benar-benar tersesat dalam semua itu.) Itu sebabnya saya ingin memahaminya pada intinya dan tidak harus beralih ke IDE Saya tidak suka melakukannya.
MikeSchinkel
@MikeSchinkel - Jika SVN terlalu rumit untuk Anda (terlepas dari rasa SVN + Editor), maka Anda tidak dapat membuat tambalan untuk proyek wordpress. Pada dasarnya jika Anda tidak suka antarmuka UI Anda ke SVN, pelajari perintahnya. Tetapi Anda tetap harus belajar. Anda dapat menggunakan SVN dengan editor apa pun yang Anda sukai btw .. Saya punya satu copyrunning trunk SVN dan dikonfigurasi pada server web sehingga membuat tambalan dan mengujinya. Setelah saya membuat satu tambalan saya menghapus perubahan lokal (kembali) dari salinan lokal saya dan kemudian dapat melanjutkan untuk tambalan lainnya. Itu selalu berhasil. Apa lagi yang harus dikatakan?
hakre