Estou tentando extrair código do meu repositório do GitHub para o meu servidor, mas o recebimento continua falhando devido a conflitos de mesclagem. Não quero manter nenhuma das alterações que possam ter ocorrido no meu servidor local desde a última solicitação.
Então, existe uma maneira de forçar o Git a substituir por qualquer versão do GitHub, em vez de me incomodar com conflitos?
Respostas:
Se você realmente deseja descartar os commits que você fez localmente, ou seja, nunca tê-los novamente na história, você não está perguntando como puxar - puxar significa mesclar e não precisa mesclar. Tudo que você precisa fazer é o seguinte:
Eu, pessoalmente, recomendo a criação de uma ramificação de backup em seu HEAD atual primeiro, para que, se você perceber que essa foi uma má ideia, não a tenha perdido de vista.
Se, por outro lado, você deseja manter esses commits e fazer com que pareça mesclar com a origem, e fazer com que a mesclagem mantenha as versões somente da origem, você pode usar a
ours
estratégia de mesclagem:fonte
Você pode usar a resposta do link duplicado apontado pelo nvm.
Ou você pode resolver conflitos usando as alterações deles (mas algumas podem ser mantidas se não conflitarem com a versão remota):
fonte
X
A opção é passada para mesclar a estratégia, que é apenasrecursive
se você mesclar duas cabeças, então seu comando irá reclamar"Could not find merge strategy 'theirs'. Available strategies are: octopus ours recursive resolve subtree."
- é uma pena, porqueX
pode ser definido na configuração (por exemplogit config pull.twohead theirs
), mass
não pode.