Tampaknya Anda ingin menghapus 2011_Hotfixcabang tanpa kehilangan riwayatnya. Saya akan membahas penghapusan pertama dan sejarah kedua.
gitMetode penghapusan cabang biasa telah dijelaskan di atas, dan mereka bekerja seperti yang diharapkan. gittidak memiliki perintah satu atau dua kata yang berarti, "Hei git, hapus cabang lokal dan remote." Tetapi perilaku ini dapat ditiru melalui shell script. Misalnya, ambil skrip shell Zach Holman 'git-nuke' . Ini sangat sederhana:
#!/bin/sh
git branch -D $1
git push origin :$1
Masukkan ini dalam file yang dapat dieksekusi (mis., git-nuke) Di salah satu $PATHdirektori Anda . Jika Anda tidak berada di 2011_Hotfixcabang, Anda hanya menjalankan git-nuke 2011_Hotfixakan menghapus cabang lokal dan jauh. Ini jauh lebih cepat & sederhana - meskipun mungkin lebih berbahaya - daripada standargit perintah .
Kekhawatiran Anda tentang pelestarian sejarah adalah hal yang bagus. Dalam hal ini, Anda tidak perlu khawatir. Setelah Anda bergabung 2011_Hotfixke master, semua komit dari 2011_Hotfixakan ditambahkan ke master's sejarah commit. Singkatnya, Anda tidak akan kehilangan riwayat dari penggabungan sederhana.
Saya punya satu kata lagi untuk ditambahkan yang mungkin di luar cakupan pertanyaan Anda, tetapi tetap relevan. Mari kita bayangkan bahwa ada 20 kecil, "sedang dalam proses" berkomitmen 2011_Hotfix; namun, Anda hanya ingin satu komit lengkap untuk 2011_Hotfixditambahkan ke masterriwayat. Bagaimana Anda menggabungkan semua 20 komit kecil menjadi satu komit besar? Untungnya, gitmemungkinkan Anda untuk mengkonsolidasikan banyak komit menjadi satu komit dengan menggunakan git-rebase. Saya tidak akan menjelaskan di sini cara kerjanya; Namun, jika Anda tertarik, dokumentasinyagit-rebase sangat bagus. Perhatikan bahwagit rebase penulisan ulang riwayat, sehingga harus digunakan secara bijaksana, terutama jika Anda baru mengenalnya. Akhirnya, 2011_Hotfixskenario Anda adalah tentang tim pengembang, bukan pengembang solo. Jika anggota tim proyek digunakangit rebase, bijaksana bagi tim untuk memiliki pedoman eksplisit tentang penggunaan git rebaseagar beberapa koboi pengembang tidak secara tidak sengaja merusak sejarah proyek git.