Saya baru-baru ini berdiskusi dengan orang-orang yang benar-benar menentang strategi rebase cabang fitur di GIT. Tampaknya menjadi pola yang diterima untuk menggunakan rebase hanya untuk cabang lokal, swasta tetapi tidak pernah menggunakannya ketika ada beberapa orang yang bekerja pada fitur & cabang yang sama, seperti yang disebut "Peraturan Emas untuk Rebasing" ini (seperti dijelaskan di sini: https : //www.atlassian.com/git/tutorials/merging-vs-rebasing/conceptual-overview )
Saya hanya terkejut ada konsensus tentang ini. Saya bekerja 3 tahun dengan strategi rebasing penuh, dengan sekitar 20 pengembang bekerja bersama dan coba tebak, itu berhasil.
Prosesnya pada dasarnya:
- Anda membuat cabang fitur Anda, sebut saja "fitur saya", dan dorong ke fitur asli / asli
- Orang lain mungkin memeriksanya dan mengerjakannya
- Anda kadang-kadang dapat rebase dari master: dari "myfeature", git rebase asal / master ; dan kemudian, ya, Anda harus mendorongnya.
- Apa yang terjadi ketika orang lain ingin mendorong komitmen mereka? Mereka hanya rebase itu: git rebase asal / myfeature . Jadi mereka sekarang maju cepat dan bisa mendorongnya tanpa memaksa.
Satu-satunya prinsip yang harus dihormati adalah bahwa cabang fitur dimiliki oleh seseorang . Pemilik adalah satu-satunya yang dapat mendorong-kekuatan.
Jadi, saya akui: begitu ada push-force, ada risiko untuk melakukan kesalahan. Itu benar. Tetapi ada juga banyak cara untuk pulih dari kesalahan, dan sungguh, dalam 3 tahun pembangunan, saya tidak melihat banyak kesalahan yang memaksa, dan ketika itu terjadi kami selalu menemukan cara untuk pulih dengan benar.
Jadi, mengapa "Aturan Emas Rebase" ini diterima secara luas? Apakah ada hal lain yang saya lewatkan? Saya mengerti itu membutuhkan minimum organisasi (setiap strategi membutuhkan beberapa organisasi), tetapi itu berhasil.