mesclando o git com o vim sem o MERGED automerged

1

Eu quero usar o vim (possivelmente fugitivo) para mesclar meus conflitos, mas odeio os marcadores de conflito automerged. Estou procurando algo como

|-------------------------------|
|         |          |          |
| LOCAL   | HEAD     |   REMOTE |
|         |          |          |
|-------------------------------|
|                               |
|    clean head to merge        |
|       changes into            |
|-------------------------------|

Como faço para configurar isso?

yarbelk
fonte
Será que esta ligação ajudar? Ou este ?
Romainl

Respostas:

1

Para sempre desativar os marcadores de conflito, você pode configurar o algoritmo de mesclagem binária ( origem ):

$ git config merge.default binary

Como alternativa, o índice tem todas as versões diferentes; substitua sua cópia de trabalho pelo que você deseja:

$ git checkout --ours <filename>
$ git checkout --theirs <filename>
$ git checkout-index -f --stage=1 <filename>    # for the base

(Com o Fugitive, você pode fazer isso diretamente no Vim.)

Ingo Karkat
fonte
0

Eu uso o Fugitive. O incrível vim lançado para resolver conflitos de mesclagem com vimdiff + Fugitive é o que eu uso repetidamente toda vez que esqueço como fazer isso.

  1. Você abre um arquivo em conflito e digita :Gvdiff(isso fornece uma divisão vertical conforme desejado)
  2. Você usa :diffput(ou apenas dp) para enviar código das janelas locais / remotas para HEAD
  3. Quando estiver satisfeito com o tipo de alterações, :Gwriteele fechará a janela de diferenças e incluirá o arquivo no índice Git, pronto para a confirmação
icc97
fonte