Saya telah bercabang sebuah proyek dan telah banyak berubah. Garpu ini bukan hanya perubahan fitur kecil di sini dan perbaikan bug yang terkubur di sana, ini adalah perubahan yang cukup besar. Hanya sebagian besar kode inti yang dibagikan.
Saya bercabang proyek ini di v2.5.0. Untuk sementara saya sudah mulai memversi garpu saya di v3.0. Namun saya tidak yakin apakah ini cara yang benar, terutama karena ketika proyek itu mencapai v3.0, semuanya menjadi membingungkan. Tetapi saya tidak ingin memulai dari awal pada v1.0 atau v0.1 karena itu menyiratkan masa kanak-kanak, ketidakstabilan, dan non-kehalusan suatu proyek. Ini tidak benar, karena sebagian besar kode inti sangat halus dan stabil.
Saya benar-benar bingung apa yang harus dilakukan, jadi saya bertanya di sini: Apa cara standar untuk menghadapi situasi seperti ini? Apakah sebagian besar garpu memulai kembali, menambah nomor versi, atau melakukan hal lain yang tidak saya sadari.
sumber
Jawaban:
Kebanyakan garpu yang saya lihat mulai lagi dari versi 1.0. Tetapi saya menganggap Anda juga telah mengubah nama garpu Anda, jadi saya tidak yakin mengapa akan ada kebingungan jika Anda baru mulai dari v3.0.
Apa yang akan saya lakukan adalah mengubah nama proyek, merilis versi 1.0 dan memperjelas bahwa proyek tersebut merupakan fork proyek lain. Saya tidak berpikir akan ada kebingungan dengan pendekatan itu.
Jika Anda benar-benar khawatir dengan label "1.0", cukup lepaskan versi 2.0 sesaat setelah 1.0 ...
sumber
Siapkan peta jalan Anda sendiri dan patuhi itu, mulai dengan nomor versi asli tetapi jangan mencoba berpacu dengan versi saat ini dari produk asli.
sumber
Anda mungkin ingin mempertimbangkan apakah (dan berapa banyak) proyek Anda akan terkait dengan yang asli. Jika Anda berencana untuk memasukkan fitur-fitur baru dari proyek asli ke dalam Anda, Anda dapat mempertimbangkan untuk menyimpan nomor versi yang cocok dengan versi asli.
Sebagai contoh, periksa MariaDB, yang merupakan garpu dari MySQL. Mereka ingin menyimpannya sebagai pengganti 'drop-in' untuk MySQL, jadi misalnya MariaDB 5.2 memiliki semua fitur MySQL 5.2.
Lihat: http://kb.askmonty.org/v/mariadb-versus-mysql
Catatan: Karena jawaban ini diposting, MariaDB telah menyimpang secara substansial dari MySQL dan sekarang mengikuti skema versinya sendiri.
sumber
0,1 dapat menunjukkan bayi, tetapi verion 1.0+ berarti stabil. Peningkatan jumlah versi utama misalnya 2.0, 3.0, umumnya mengindikasikan perubahan fitur yang besar.
Misalnya
Apa yang saya katakan adalah nomor versi utama tidak menunjukkan kedewasaan, mereka menunjukkan set fitur utama. Nah, itu sedikit singgung dari bagaimana versi nomor produk Anda.
Apa yang saya lihat sebelumnya, yang saya suka sukai adalah mulai versi lagi dari 1.0 (atau dari 3.0 jika Anda benar-benar suka) dan kemudian di kurung mengatakan versi asli yang terakhir memiliki fitur menarik.
sumber
Jika memungkinkan, gabungkan garpu Anda kembali ke proyek asli. Saya tidak bisa cukup menekankan hal ini.
Regaeding nomor versi Anda, kemudian gunakan yang Anda bercabang ditambah akhiran tanggal.
sumber