Saya baru saja membuat perubahan ke cabang. Bagaimana saya bisa melakukan perubahan ke cabang lain?
Saya mencoba menggunakan:
git checkout "the commmit to the changed branch" -b "the other branch"
Namun, saya tidak berpikir ini adalah hal yang benar untuk dilakukan, karena dalam hal ini saya membuat cabang baru alih-alih melakukan perubahan pada "cabang lain".
Haruskah saya menggunakan perintah berikut sebagai gantinya?
git merge "the other branch"
Jawaban:
git checkout -b your-new-branch
git add <files>
git commit -m <message>
Pertama, checkout cabang baru Anda. Kemudian tambahkan semua file yang ingin Anda komit untuk pementasan. Terakhir, komit semua file yang baru saja Anda tambahkan. Anda mungkin ingin melakukan
git push origin your-new-branch
sesudahnya sehingga perubahan Anda muncul di remote.sumber
git status
untuk melihat apa yang sedang dipentaskan dan apa yang tidak.git add
dangit commit -a
?git checkout -b your-new-branch
bukangit checkout your-new-branch
?Jika Anda belum melakukan perubahan
Jika perubahan Anda kompatibel dengan cabang lainnya
Ini adalah kasus dari pertanyaan karena OP ingin komit ke cabang baru dan juga berlaku jika perubahan Anda kompatibel dengan cabang target tanpa memicu overwrite.
Seperti dalam jawaban yang diterima oleh John Brodie, Anda dapat checkout kantor cabang baru dan melakukan pekerjaan:
Jika perubahan Anda tidak kompatibel dengan cabang lainnya
Jika Anda mendapatkan kesalahan:
Kemudian Anda dapat menyimpan pekerjaan Anda, membuat cabang baru, lalu memunculkan perubahan simpanan Anda, dan menyelesaikan konflik:
Ini akan seolah-olah Anda telah melakukan perubahan itu setelah membuat cabang baru. Maka Anda dapat melakukan seperti biasa:
Jika Anda telah melakukan perubahan
Jika Anda ingin menyimpan komit di cabang asli
Lihat jawaban oleh Carl Norum dengan memetik ceri, yang merupakan alat yang tepat dalam kasus ini:
Jika Anda tidak ingin menyimpan komitmen di cabang asli
Lihat jawaban oleh joeytwiddle tentang duplikat potensial ini . Ikuti langkah-langkah di atas jika perlu, lalu putar kembali cabang asli:
Jika Anda telah mendorong perubahan Anda ke remote bersama seperti GitHub, Anda tidak boleh mencoba roll-back ini kecuali Anda tahu apa yang Anda lakukan.
sumber
error: Your local changes to the following files would be overwritten by checkout: ... Please commit your changes or stash them before you switch branches.
Apakah Anda ingin menulis jawaban baru atau mengedit jawaban saya? Jika tidak, saya bisa mengeditnya sendiri.Jika saya mengerti benar, Anda telah membuat komitmen
changed_branch
dan ingin menyalin komitmen ituother_branch
? Mudah:sumber