Resolvendo conflitos¶
Um conflito ocorre quando duas versões do repositório estão dessincronizadas, e é impossível determinar quais modificações devem ser preservadas, e quais devem ser descartadas. Estas versões não são commits diferentes, mas sim repositórios distintos: por exemplo, um repositório remoto e um repositório local. As modificações introduzidas no repositório remoto podem vir quando clonamos este repositório em outra máquina, que não o nosso computador pessoal, modificamos o código e enviamos ao repositório remoto; ou então quando um colega de trabalho introduz estas modificações a partir do seu computador pessoal.
É possível ver que um conflito ocorreu quando tentamos dar um git push e a seguinte tela aparece:
Para auxiliá-lo na compreensão deste fenômeno, é disponibilizado um repositório de código-fonte [1], usado nas imagens
desta Seção. O que está representado na imagem acima diz respeito ao fato de não ser possível enviar o código-fonte para
o GitHub pois existem modificações nos arquivos que ainda não colocamos no repositório local. Precisamos então baixá-las,
usando o comando git pull.
Às vezes, o git consegue conciliar ambas versões do código-fonte (local e remota). Porém, quando isto não é
possível, nós mesmos teremos que resolver o conflito que ocorreu nos arquivos. Será necessário o ajuste manual toda vez
que, ao executar um comando git pull, a tela
Ou então a tela
aparecer. Dependendo de qual tela aparecer, teremos que seguir caminhos diferentes:
Primeira tela: siga para a Seção Definindo o método de conciliação de conflitos
Segunda tela: siga para a Seção Finalizando
Nenhuma das duas: siga para a Seção Nenhum conflito detectado


