Eu criei uma dialog
ramificação e quando tento mesclá-la à master
ramificação. Existem 2 conflitos. Eu não sei como resolver CONFLICT (delete/modify)
. Você pode me dizer o que fazer?
$ git checkout master
$ git merge dialog
CONFLICT (delete/modify): res/layout/dialog_item.xml deleted in dialog and modified in HEAD. Version HEAD of res/layout/dialog_item.xml left in tree.
Auto-merging src/com/DialogAdapter.java
CONFLICT (content): Merge conflict in src/DialogAdapter.java
Automatic merge failed; fix conflicts and then commit the result.
Eu abri src/DialogAdapter.java
, resolvi o conflito e fiz a git add src/DialogAdapter.java
. O que mais eu preciso fazer?
git
git-merge
merge-conflict-resolution
BuZZ-dEE
fonte
fonte
Respostas:
A mensagem de conflito:
significa que
res/layout/dialog_item.xml
foi excluído no ramo de 'diálogo' em que você está mesclando, mas foi modificado em HEAD (no ramo em que você está mesclando).Então você tem que decidir se
git rm res/layout/dialog_item.xml
"ou
git add res/layout/dialog_item.xml
"Então você finaliza a mesclagem com "
git commit
".Observe que o git avisará que você está criando um commit de mesclagem, no caso (raro) em que é algo que você não deseja. Provavelmente permanece desde os dias em que o caso foi menos raro.
fonte
git rm …
), mas eu recebo…: needs merge
erm '…'
que estou tendo dificuldade em interpretar. E se eu tentar confirmar, o stackoverflow.com/questions/19985906/… será exibido novamente.git ls-files --stage
e / ou /git status --porcelain
e /git diff-files <something>
para obter a lista de arquivos alterados e dirigir um script para excluí-los ou aceitar sua versão.git status
ougit diff --cc
. Há tambémgit log --merge
o que pode ajudar ...Eu normalmente corro
git mergetool
e ele me perguntará se quero manter o arquivo modificado ou excluído. Esta é a maneira mais rápida de IMHO, pois é um comando em vez de vários por arquivo.Se você possui vários arquivos excluídos em um subdiretório específico e deseja que todos eles sejam resolvidos com a exclusão dos arquivos, faça o seguinte:
O
d
é fornecido para escolher excluir cada arquivo. Você também pode usarm
para manter o arquivo modificado. Retirado do prompt que você vê quando executamergetool
:fonte
Se você estiver usando o Git Gui no Windows,
fonte