Sebaiknya pahami maksud pesan kesalahan itu - needs merge
dan error: you need to resolve your current index first
tunjukkan bahwa penggabungan gagal, dan bahwa ada konflik dalam file tersebut. Jika Anda memutuskan bahwa penggabungan apa pun yang Anda coba lakukan adalah ide yang buruk, Anda dapat mengembalikan semuanya dengan:
git reset --merge
Namun, jika tidak, Anda harus menyelesaikan konflik gabungan tersebut, seperti yang dijelaskan dalam manual git .
Setelah Anda mengatasinya dengan teknik apa pun, Anda harus dapat checkout 9-sign-in-out
cabang. Masalah dengan hanya mengubah nama Anda 9-sign-in-out
menjadi master
, seperti yang disarankan dalam jawaban wRAR adalah bahwa jika Anda telah berbagi cabang master sebelumnya dengan siapa pun, ini akan menciptakan masalah bagi mereka, karena jika sejarah kedua cabang berbeda, Anda akan menerbitkan ditulis ulang sejarah.
Pada dasarnya apa yang ingin Anda lakukan adalah menggabungkan cabang topik Anda 9-sign-in-out
ke dalam master
tetapi tetap mempertahankan versi file di cabang topik. Anda bisa melakukan ini dengan langkah-langkah berikut:
# Switch to the topic branch:
git checkout 9-sign-in-out
# Create a merge commit, which looks as if it's merging in from master, but is
# actually discarding everything from the master branch and keeping everything
# from 9-sign-in-out:
git merge -s ours master
# Switch back to the master branch:
git checkout master
# Merge the topic branch into master - this should now be a fast-forward
# that leaves you with master exactly as 9-sign-in-out was:
git merge 9-sign-in-out