Git

NOME

git-merge-index - Executa uma mesclagem para os arquivos que precisam ser mesclados

RESUMO

git merge-index [-o] [-q] <merge-program> (-a | ( [--] <arquivo>…​) )

DESCRIÇÃO

This looks up the <file>(s) in the index and, if there are any merge entries, passes the SHA-1 hash for those files as arguments 1, 2, 3 (empty argument if no file), and <file> as argument 4. File modes for the three files are passed as arguments 5, 6 and 7.

OPÇÕES

--

Não interprete mais argumentos como opções.

-a

Execute a mesclagem em todos os arquivos no índice que precisam ser mesclados.

-o

Em vez de parar na primeira mesclagem com problemas, faça todos eles de uma vez só - continue com a mesclagem mesmo quando as mesclagens anteriores retornarem erros e retorne apenas o código do erro ao final de todas as mesclagens.

-q

Não reclame sobre um programa de mesclagem que falhou (uma falha no programa de mesclagem geralmente indica conflitos durante o processo). Isto serve apenas para porcelanas que queiram emitir mensagens personalizadas.

Caso o comando git merge-index seja chamado com vários <arquivo>s (ou -a), ele os processará por vez, parando apenas caso o merge retorne um código com uma saída diferente de zero.

Normalmente, é executado com um script chamando a imitação do comando merge pelo Git vindo do pacote RCS.

Um script de exemplo chamado git merge-one-file está incluso na distribuição.

ALERTA ALERTA ALERTA! A "ordem da mesclagem dos objetos" do Git é diferente da ordem de mesclagem do objeto no programa RCS merge. Na ordem acima, o original é o primeiro. Porém, a ordem das opções para o programa de mesclagem merge de três vias é ter o original no meio. Não me pergunte o por quê.

Exemplos:

torvalds@ppc970:~/merge-test> git merge-index cat MM
Este é o MM vindo da árvore original.		# original
Este é o MM modificado no ramo A.		# merge1
Este é o MM modificado no ramo B.		# merge2
Este é o MM modificado no ramo B.		# conteúdo atual

ou

torvalds@ppc970:~/merge-test> git merge-index cat AA MM
cat: : No such file or directory
This is added AA in the branch A.
This is added AA in the branch B.
This is added AA in the branch B.
fatal: merge program failed

onde o último exemplo mostra como o comando git merge-index interrompe as tentativas de mesclagem depois que algo retorna um erro (ou seja, cat retornou um erro para o arquivo AA, porque ele não existia no original e portanto, git merge-index sequer tentou mesclar o tal MM).

GIT

Parte do conjunto git[1]

scroll-to-top