Saya melakukan rebasing di git, dan satu konflik yang saya dapatkan adalah 'keduanya ditambahkan' - yaitu, nama file yang persis sama telah ditambahkan secara independen di cabang saya, dan di cabang tempat saya melakukan rebasing. git status
Beritahu aku:
# Unmerged paths:
# (use "git reset HEAD <file>..." to unstage)
# (use "git add/rm <file>..." as appropriate to mark resolution)
#
# both added: src/MyFile.cs
Pertanyaan saya adalah, bagaimana cara mengatasi ini? Apakah saya harus menggunakan alat gabungan atau adakah cara untuk melakukannya hanya dari baris perintah? Jika saya git rm src/MyFile.cs
, bagaimana git mengetahui versi file mana yang ingin saya hapus dan mana yang ingin saya simpan?
git checkout --ours someFile
Sepertinya tidak melakukan apa pun saat melakukan status git. Ingatlah untuk melakukan ini setelahnya.git add someFile
git status
Saya terkadang merasa bingung menggunakan opsi
--theirs
dan--ours
untuk mengidentifikasi dari mana file itu akan berasal. Sebagian besar waktu saya akan berada di cabang yang saya rebasing yang dirujuk oleh--theirs
!Anda juga bisa menggunakan
git checkout <tree-ish> -- src/MyFile.cs
Dimana
<tree-ish>
dapat diganti dengan nama cabang atau commit-id yang berisi file yang ingin Anda simpan.git checkout 6a363d8 -- src/MyFile.cs
git checkout my_branch -- src/MyFile.cs
git checkout HEAD -- src/MyFile.cs
sumber
Saat melakukan ...
git checkout --ours someFile
Ini mungkin tampak seperti tidak melakukan apapun saat melakukan status git.
Ingatlah untuk melakukan ini setelahnya.
sumber