Bagaimana saya berkontribusi kode ke Joomla?

19

Saya sadar bahwa kode ini dikelola di https://github.com/joomla/joomla-cms (setidaknya untuk CMS) dan bahwa saya harus mengirim permintaan tarik untuk menyarankan agar kode ditambahkan.

Saya terutama tertarik pada tips bagus tentang mengelola kontribusi saya dan memastikan bahwa kode masuk ke tempat yang tepat.

Haruskah saya menggunakan cabang berbeda di repo bercabang saya untuk mengelola kontribusi yang berbeda? Jika demikian, apa cara terbaik untuk menautkan cabang itu kembali ke cabang utama di repo Joomla?

Apakah ada metode yang baik untuk memperbarui salinan garpu saya?

Setiap saran tentang aliran yang baik untuk mengelola proses ini akan sangat membantu!

David Fritsch
sumber

Jawaban:

10

Itu selalu baik untuk memiliki cabang khusus untuk setiap Permintaan Tarik yang akan Anda buat.

Salah satu cara paling sederhana untuk membuat cabang baru yang terbaru adalah dengan hanya menggunakan web gui GitHub untuk mengedit file di repositori asli. Saat menyimpan, GitHub akan secara otomatis membuat cabang baru di garpu Anda berdasarkan cabang yang saat ini Anda edit. Jika Anda ingin mengedit lebih banyak file, Anda dapat mengeditnya di cabang yang baru dibuat dan terbaru.

Jika Anda sedikit terbiasa dengan Git, maka Anda rebase cabang pementasan bercabang Anda dengan cabang asli hulu sehingga sinkron sebelum Anda membuat cabang baru. Juga jika Anda harus memperbarui PR, disarankan untuk rebase bukan penggabungan master. Sementara kedua cara bekerja, gabungan-komitmen hanya menciptakan sejarah buruk dan lebih sulit untuk diatasi.

Secara umum, PR harus "atomik". Ini berarti jika Anda mencoba untuk memperbaiki sesuatu, hanya perbaiki bug tersebut. Jangan memperbaiki dua bug berbeda dalam PR yang sama dan juga tidak melakukan perbaikan codestyle. Lebih mudah untuk menguji dan juga lebih kecil kemungkinan untuk menciptakan konflik jika PR tinggal sedikit lebih lama dari yang diharapkan.

Dan tentu saja menambahkan deskripsi yang baik tentang apa yang ingin Anda lakukan dan menguji instruksi untuk mereproduksi masalah dan menguji perbaikan Anda :-)

Bakual
sumber
4

Satu hal besar yang membantu pengelompokan kontribusi Anda adalah memindahkan setiap kontribusi ke cabang terpisah, yang dinamai sesuai. Jika Anda menambahkan fitur, gunakan awalan suka feature-dan tambahkan deskripsi fitur satu atau dua kata untuk nama cabang. Jika itu adalah perbaikan bug di JFormkelas, gunakan bugfix-jform. Ini membuatnya sangat mudah untuk mengidentifikasi apa yang sedang Anda kerjakan dengan memeriksa cabang git Anda melalui git branch -a.

Don Gilbert
sumber