Saya tidak ingin berakhir dengan 82 cabang fitur yang berkeliaran , jadi saya bertanya-tanya apa potensi kekurangannya hanya dengan menghapus cabang fitur segera setelah saya menggabungkannya menjadi master.
Alur Kerja:
git co -b feat-xyz
hack hack
git ci
hack some more
git ci
git co master
git merge feat-xyz
smoke test
git br -d feat-xyz
Ada masalah di sini?
git
version-control
branch
bstpierre.dll
sumber
sumber
git reflog
. KemudianJawaban:
Hapus setelah penggabungan adalah cara yang biasa. Inilah sebabnya mengapa
git branch -d yourbranchname
memeriksa untuk memastikan bahwa cabang telah digabungkan sepenuhnya sebelum akan dihapus.Ada beberapa alasan yang dapat saya pikirkan untuk mempertahankan sebuah cabang: Anda mungkin ingin menyimpannya jika ada bug yang muncul kembali setelah mencapai produksi, atau Anda mungkin menginginkan catatan historis.
Dalam kedua kasus tersebut, Anda memiliki opsi untuk menandai kepala cabang sebelum Anda menghapusnya. Sebuah tag seperti cabang yang merupakan penunjuk ke komit, kecuali untuk beberapa perbedaan kecil: 1) porcelain biasanya tidak menampilkan tag dalam perintah eksplorasi seperti git show-branch atau tab-auto complete di checkout, 2) memeriksa satu menempatkan Anda dalam KEPALA (non-ref) terpisah) Anda dapat meninggalkan pesan " penandaan ", yang menyebabkan tag disimpan sebagai objek di penyimpanan objek seperti komit.
Dengan cara ini Anda menyimpan riwayat, dan jika Anda memang perlu memperbaiki bug, saya sarankan untuk membuat cabang baru dari master untuk memperbaikinya.
sumber
Saya menghapus setelah penggabungan, tetapi saya selalu melakukan a
git merge --no-ff
, untuk menghindari penerusan cepat sehingga riwayat cabang terlihat pada grafik. Saya suka memiliki riwayat di mana cabang fitur berangkat dari cabang pengembangan dan di mana ia bergabung kembali:Ini diambil dari Model percabangan Git yang sukses oleh Vincent Driessen, alur kerja yang sangat bagus untuk digunakan dengan git yang saya terapkan untuk sebagian besar proyek saya.
sumber
merge --no-ff
kembali ke master karena seperti yang Anda katakan, Anda dapat melihat sejarah.Saya dapat memikirkan dua alasan mengapa Anda mungkin ingin menyimpan cabang fitur sebentar:
Dalam praktiknya, sebagian besar waktu menghapus setelah penggabungan baik-baik saja.
sumber
Alur kerja tipikal akan
sumber
saya pikir itu adalah alur kerja yang khas (menghapus setelah penggabungan)
EDIT Jadi, daripada menggabungkan, setidaknya untuk cabang berumur pendek, saya pikir idenya adalah untuk mendasarkannya kembali ke master. kemudian Anda berakhir dengan riwayat perubahan linier, dan seluruh cabang menjadi bagian dari batang utama. dalam hal ini Anda memiliki semua perubahan di sana sehingga Anda jelas tidak memerlukan salinannya.
sumber