Como verificar se há conflitos de mesclagem no git

Como verificar se há conflitos de mesclagem no git
Vários usuários podem funcionar com várias filiais em qualquer repositório Git para acompanhar suas tarefas de projeto. Às vezes, requer a fusão do conteúdo de uma filial para outra filial. Esta tarefa pode ser feita com muita facilidade usando o 'Git mescla' comando. Mas o conflito de mesclagem surge quando dois ou mais usuários do GIT do mesmo projeto estão trabalhando no mesmo arquivo e realizando as diferentes tarefas nesse arquivo, como um usuário está adicionando conteúdo ao arquivo e outro usuário está excluindo o conteúdo do arquivo e, em seguida, não é possível para o Git selecionar o arquivo correto para a atualização. O conflito de mesclagem também pode aparecer onde o usuário modifica um arquivo de repositório local em várias ramificações. O Git marcará o arquivo como conflito de mesclagem, e os usuários do Git precisam resolver esse problema antes de continuar o trabalho. As maneiras de verificar o conflito de mesclagem para um repositório local e resolver esta questão foram explicadas neste tutorial.

Pré -requisitos:

Instale o GitHub Desktop

O GitHub Desktop ajuda o usuário do Git a executar as tarefas relacionadas ao Git graficamente. Você pode fazer o download facilmente do instalador mais recente deste aplicativo para o Ubuntu do GitHub.com. Você precisa instalar e configurar este aplicativo após o download para usá -lo. Você também pode verificar o tutorial para instalar o GitHub Desktop no Ubuntu para conhecer o processo de instalação corretamente.

Crie um repositório local

Você precisa criar um repositório local para testar os comandos usados ​​neste tutorial para verificar e resolver conflitos de mesclagem.

Verifique o conflito de mesclagem:

Você pode criar um novo repositório local ou qualquer repositório existente para verificar os comandos usados ​​nesta parte deste tutorial. Eu usei um repositório local existente chamado Bash e abriu a pasta do repositório do terminal. Execute os seguintes comandos para verificar a lista de ramificação existente, mude para o mestre ramificar e criar um arquivo chamado configurar.TXT usando o editor de nano.

Ramo $ git
$ git checkout mestre
$ Nano Configuração.TXT

A saída a seguir mostra que existem três ramos no repositório e o principal a filial está ativa inicialmente. Em seguida, o ramo ativo mudou para mestre. O editor do Nano será aberto após a execução da instalação 'Nano.comando txt '.

Você pode adicionar qualquer conteúdo ao arquivo. O seguinte conteúdo foi adicionado no configurar.TXT arquivo aqui.

Siga as instruções…

Execute os seguintes comandos para adicionar a configuração.arquivo txt no repositório, compromete a tarefa com a mensagem de confirmação e verifique o status atual do repositório.

$ git Adicionar configuração.TXT
$ git Commit -M "Configuração.txt é adicionado "
$ git status

A saída a seguir mostra que um arquivo é inserido no repositório com a mensagem de confirmação, e a árvore de trabalho está limpa agora para o mestre filial.

Execute os seguintes comandos para alterar o ramo atual para o secundário e abrir o editor de nano para adicionar o conteúdo para o configurar.TXT arquivo que já foi editado no mestre filial.

$ git checkout secundário
$ Nano Configuração.TXT

A saída a seguir aparecerá após a execução do comando acima.

Você pode adicionar qualquer conteúdo ao arquivo. O seguinte conteúdo foi adicionado no configurar.TXT arquivo aqui.

Leia as instruções…

Execute os seguintes comandos para adicionar o configurar.TXT Arquivo no repositório, comprometa a tarefa com a mensagem de confirmação e verifique o status atual do repositório.

$ git Adicionar configuração.TXT
$ git Commit -M "Configuração.TXT é adicionado para o ramo secundário."
$ git status

A saída a seguir mostra que o configurar.TXT O arquivo foi adicionado à filial secundária do repositório.

configurar.TXT O arquivo foi modificado nas filiais mestre e secundário. Execute os seguintes comandos para mudar para o mestre ramificar e mesclar o conteúdo do secundário ramo para o mestre filial.

$ git checkout mestre
$ Git Mesclar secundário

A saída a seguir mostra que o conflito de mesclagem apareceu porque o mesmo arquivo foi modificado em ambos os bancos.

Resolva o conflito de mesclagem:

Execute o seguinte comando para verificar o conteúdo do configurar.TXT Arquivo antes de resolver o conflito de mesclagem.

$ CAT Configuração.TXT

A saída a seguir mostra que o configurar.TXT O arquivo contém o conteúdo adicionado nas duas filiais com alguns símbolos extras. Os sete personagens sem<<<<<<<) with HEAD has added before the committed content of the mestre ramo e os sete caracteres de sinal igual (=======) foram adicionados antes do conteúdo comprometido do secundário filial. Os sete maiores que os caracteres (>>>>>>>) foram adicionados com o secundário Nome da filial no final do arquivo. Aqui o menor que o personagem indica a edição da filial atual. O sinal de igual indica o fim da primeira edição. O Maior que o personagem indica o final da segunda edição.

Execute o seguinte comando para verificar o status atual do repositório.

$ git status

A saída a seguir mostra que você pode abortar a operação de mesclagem ou adicionar o arquivo novamente após a edição e comprometer a tarefa antes de executar o comando Merge novamente.

Abra o arquivo no editor Nano e modifique o conteúdo com base no requisito, removendo todos os símbolos.

$ Nano Configuração.TXT

O conteúdo a seguir foi adicionado ao arquivo removendo todo o conteúdo anterior aqui.

Leia as instruções corretamente…

Execute os seguintes comandos para adicionar o arquivo, verifique o status atual do arquivo e preencha a operação de mesclagem.

$ git Adicionar configuração.TXT
$ git status
$ git Commit

A saída a seguir mostra que o conflito de mesclagem foi corrigido e o ramo secundário se fundiu após a execução do 'Git Commit' comando.

Conclusão:

As maneiras de detectar e resolver o conflito de mesclagem local do repositório Git foram mostradas neste tutorial usando um repositório local de demonstração. Espero que o conceito de conflito de mesclagem seja liberado para os leitores e resolva esse problema depois de ler este tutorial.