Quando faço uma resolução de conflitos de mesclagem com o Kdiff3 (e outra ferramenta de mesclagem que tentei), notei que na resolução um *.orig
arquivo é criado. Existe uma maneira de não criar esse arquivo extra?
fonte
Quando faço uma resolução de conflitos de mesclagem com o Kdiff3 (e outra ferramenta de mesclagem que tentei), notei que na resolução um *.orig
arquivo é criado. Existe uma maneira de não criar esse arquivo extra?
Uma possível solução de git config
:
git config --global mergetool.keepBackup false
Após realizar uma mesclagem, o arquivo original com marcadores de conflito pode ser salvo como um arquivo com uma
.orig
extensão.
Se essa variável estiver definida comofalse
, esse arquivo não será preservado.
O padrãotrue
é (por exemplo, manter os arquivos de backup).
A alternativa é não adicionar ou ignorar esses arquivos, conforme sugerido neste artigo do gitguru ,
git mergetool
salva a versão de conflito de mesclagem do arquivo com o.orig
sufixo " ".
Exclua-o antes de adicionar e confirmar a mesclagem ou adicionar*.orig
ao seu.gitignore
.
Berik sugere nos comentários para usar:
find . -name \*.orig
find . -name \*.orig -delete
Charles Bailey aconselha em sua resposta estar ciente das configurações internas da ferramenta diff que também podem gerar esses arquivos de backup, independentemente das configurações do git.
.bak
como mencionado em seu manual ).Então você precisa redefinir essas configurações também.
git config --global mergetool.keepBackup false
, Resolvido para P4Merge no Mavericks 10.9.2. Obrigado :)keepBackup = false
under[mergetool]
, not under[mergetool "BeyondCompare4"]
ou qualquer outra ferramenta de mesclagem visual configurada.Você deve ter um pouco de cuidado ao usar
kdiff3
enquantogit mergetool
pode ser configurado para salvar um.orig
arquivo durante a mesclagem, o comportamento padrãokdiff3
para também é salvar um.orig
arquivo de backup independentementegit mergetool
.Você precisa garantir que o
mergetool
backup esteja desativado:e também que as configurações do kdiff3 estão definidas para não criar um backup:
fonte
Configure/Options => Directory Merge => Backup Files (*.orig)
realmente ajudou a se livrar de todo o estranho protocolo io-slave, klauncher «» desconhecido, e não conseguiu criar erros .orig. obrigadogit config --global mergetool.keepBackup false
precisa ser definido?Para ser claro, o comando git correto é:
As outras respostas têm erros de digitação na linha de comando que farão com que ela falhe ou não funcione corretamente.
fonte
A opção de salvar o arquivo .orig pode ser desativada configurando o KDiff3
fonte
Eu uso isso para limpar todos os arquivos que terminam em ".orig":
Se você é um gato assustador :), você pode deixar a última parte de fora apenas para listá-los (ou deixar de lado
-r
se desejar aprovar cada exclusão):fonte
Eu simplesmente uso o comando
verifique se apenas o arquivo que eu quero remover está listado
fonte
Além das respostas corretas oferecidas como soluções de longo prazo, você pode usar o git para remover todos os arquivos desnecessários uma vez para você com o
git clean -f
comando, mas usegit clean --dry-run
primeiro para garantir que nada inesperado aconteça.Isso tem o benefício de usar a funcionalidade incorporada testada do Git sobre scripts específicos do seu SO / shell para remover os arquivos.
fonte
Ou apenas adicione
* .orig
ao seu gitignore global
fonte
Isso deve funcionar para o Beyond Compare (como mergetool) também
fonte
Janelas:
Win/Users/HOME/.gitconfig
conjunto de arquivosmergetool.keepTemporaries=false
git/libexec/git-core/git-mergetool
, na funçãocleanup_temp_files()
adicionerm -rf -- "$MERGED.orig"
dentro do bloco else.fonte