Mungkin ada lebih dari satu cara untuk mengajukan pertanyaan ini, jadi berikut ini uraian masalahnya. Saya sedang mengerjakan master dan melakukan beberapa hal dan kemudian memutuskan untuk menunda pekerjaan itu. Saya membuat cadangan beberapa komitmen dan kemudian bercabang dari sebelum saya memulai pekerjaan omong kosong saya. Praktis ini berfungsi dengan baik, saya baru saja memiliki cabang yang berbeda sebagai cabang pengembangan utama saya. Saya bertanya-tanya bagaimana saya bisa mengubah banyak hal jadi saya mengerjakan master lagi tetapi tidak ada pekerjaan sampah saya dan mengatakan pekerjaan ada di cabang yang berbeda.
Beberapa cara ini dapat ditanyakan / diselesaikan: Bagaimana cara mengganti nama cabang master saya menjadi yang lain dan kemudian mengganti nama yang lain menjadi master? Bagaimana cara mencadangkan master dan kemudian menyebabkan semua komitmen yang telah saya buat cadangannya berada di cabang yang berbeda?
Terima kasih atas semua jawaban (cepat)! Semuanya baik-baik saja.
[branch "crap_work"]
untuk membaca[branch "master"]
sehingga master masih sinkron denganorigin/master
. Tentu saja, keadaan kedua repo tersebut masih masuk akal.git push -uf origin master
dangit push -u origin crap_work
.Saya pikir Anda harus mempertimbangkan strategi pengembangan yang berbeda untuk mencegah masalah seperti ini. Salah satu yang tampaknya paling berhasil bagi saya adalah tidak pernah melakukan pengembangan secara langsung di cabang master saya. Terlepas dari perubahan yang saya buat, saya selalu membuat cabang baru untuk kode baru:
Dari sana, saya dapat menerapkan perubahan ke repositori publik:
atau akhirnya hanya menggabungkannya kembali dengan cabang master saya:
Jika Anda benar-benar perlu kembali ke titik waktu yang lebih lama dan menetapkannya sebagai master Anda, Anda dapat mengganti nama cabang saat ini menjadi yang lain dan kemudian memeriksa versi yang lebih lama untuk menjadi master Anda:
sumber
Mulai
master
, buat cabang yang dipanggilin-progress
, lalu setel ulangmaster
ke komit sebelumnya.sumber
Ini relatif mudah:
sumber
git checkout -b
membuat cabang dan membuatnya aktif.Ini akan mengatur master Anda ke titik mana pun dalam satu langkah:
sumber