Qual é a melhor ferramenta para visualizar e editar uma mesclagem no Git? Eu gostaria de obter uma visualização de mesclagem em três direções, com "mine", "deles" e "ancestral" em painéis separados e um quarto painel de "saída".
Além disso, as instruções para invocar a referida ferramenta seriam ótimas. (Ainda não descobri como iniciar o kdiff3 de tal maneira que não me dê um erro.)
Meu sistema operacional é o Ubuntu.
git
version-control
merge
andy
fonte
fonte
Respostas:
O Meld é uma ferramenta de difusão / mesclagem gratuita, de código aberto e multiplataforma (UNIX / Linux, OSX, Windows).
Veja como instalá-lo em:
fonte
meld
é tedioso com diferenças complexas, poder selecionar opções comochose b for all unresolved conflicts
é muito melhor do que ter que clicar manualmente na seta correta para cada pedaçomeld
. Além disso, ser capaz de mesclar em um arquivo de saída específico, em vez de editar os arquivos de entrada no local, é inestimável para o backup de nerges com falha.Você pode configurar sua própria ferramenta de mesclagem para ser usada com "
git mergetool
".Exemplo:
E enquanto você está nisso, também pode configurá-lo como seu difftool para "
git difftool
":Observe que no Unix / Linux você não deseja que a
$BASE
variável seja analisada pelo seu shell - ela deve aparecer no seu arquivo ~ / .gitconfig para que isso funcione.fonte
O Beyond Compare 3 , meu favorito, possui umafuncionalidade de mesclagem na edição Pro . A coisa boa com sua mesclagem é que ela permite ver todas as quatro visualizações: resultado base, esquerdo, direito e mesclado. É um pouco menos visual que o P4V, mas muito mais que o WinDiff. Ele se integra a muitos controles de origem e funciona no Windows / Linux. Possui muitos recursos, como regras avançadas, edições, alinhamento manual ...
O Perforce Visual Client ( P4V ) é uma ferramenta gratuita que fornece uma das interfaces mais explícitas para mesclagem (veja algumas capturas de tela ). Funciona em todas as principais plataformas. Minha principal decepção com essa ferramenta é o tipo de interface "somente leitura" . Você não pode editar manualmente os arquivos e não pode alinhar manualmente.
PS: P4Merge está incluído no P4V. O Perforce tenta dificultar um pouco a obtenção da ferramenta sem o cliente.
O SourceGear Diff / Merge pode ser minha segunda opção de ferramenta gratuita. Verifique a mesclagem da captura de tela e você verá que tem pelo menos três visualizações.
O Meld é uma ferramenta gratuita mais recente que eu preferiria ao SourceGear Diff / Merge : Agora também está funcionando na maioria das plataformas (Windows / Linux / Mac) com a vantagem distinta de oferecer suporte nativo a algum controle de origem como o Git . Portanto, você pode ter um histórico de diferenças em todos os arquivos muito mais simples. A exibição de mesclagem (veja a captura de tela ) possui apenas 3 painéis, assim como o SourceGear Diff / Merge . Isso torna a fusão um pouco mais difícil em casos complexos.
PS: Se uma ferramenta um dia suportar 5 visualizações mescladas , isso seria realmente incrível, porque se você escolher um commit no Git, realmente não terá uma base, mas duas. Duas bases, duas alterações e uma mesclagem resultante.
fonte
Eu ouço coisas boas sobre o kdiff3.
fonte
kdiff3
tem muito mais recursos, masmeld
tem uma interface melhor. Na minha opinião,meld
é melhor para mesclagens fáceis onde os recursos fornecidos pormeld
são suficientes. Lembre-se de tentardiffuse
também.Minha ferramenta de mesclagem visual favorita é o SourceGear DiffMerge
fonte
vimdiff
Depois de aprender o vim (e IMHO você deveria), o vimdiff é apenas mais um pequeno conceito ortogonal bonito para aprender. Para obter ajuda on-line no vim:
Esta pergunta aborda como usá-lo: Como uso o vimdiff para resolver um conflito?
Se você está preso na idade das trevas do uso do mouse e os arquivos que você está mesclando não são muito grandes, recomendo o meld.
fonte
Você pode tentar o P4Merge .
Os recursos incluem:
fonte
O IntelliJ IDEA possui uma sofisticada ferramenta de resolução de conflitos de mesclagem com a varinha mágica Resolve, que simplifica bastante a fusão:
fonte
Difuso é o meu favorito, mas é claro que sou tendencioso. :-) É muito fácil de usar:
fonte
diffuse
parece muito bom. Eu apenas tentei agora e fez melhor do quekdiff3
. Mas, estou tentando usá-logit mergetool
e ele abre 4 arquivos um ao lado do outro (local, resultado de mesclagem, remoto, base), e minha tela não é suficientemente larga para isso. Eu tive que fazer muita rolagem horizontal. O kdiff3 mostra apenas 3 um ao lado do outro e o resultado na metade inferior da janela.Araxis Merge http://www.araxis.com/merge Estou usando-o no Mac OS X, mas já o usei no Windows ... não é gratuito ... mas possui alguns recursos interessantes ... janelas embora.
fonte
Você pode alterar a ferramenta usada pelo git mergetool passando
git mergetool -t=<tool>
ou--tool=<tool>
. Para alterar o padrão (do vimdiff), usegit config merge.tool <tool>
.fonte
Se você está apenas procurando uma ferramenta diff além da comparação, é bastante agradável: http://www.scootersoftware.com/moreinfo.php
fonte
Portanto, para a fusão do git, você pode tentar:
DiffMerge para comparar e mesclar visualmente arquivos no Windows, OS X e Linux.
Meld , é uma ferramenta visual de diferenças e mesclagem.
opendiff
(parte do Xcode Tools no macOS), um utilitário de linha de comando que inicia o aplicativo FileMerge do Terminal para comparar graficamente arquivos ou diretórios, incluindo a mesclagem .fonte
git config --global merge.tool opendiff
funcionou melhor para mimEu tentei muitas das ferramentas mencionadas aqui e nenhuma delas foi exatamente o que estou procurando.
Pessoalmente, achei o Atom uma ótima ferramenta para visualizar diferenças e resolver / mesclar conflitos.
Quanto à mesclagem, não há três visualizações, mas é tudo combinado em um com realce colorido para cada versão. Você pode editar o código diretamente ou existem botões para usar a versão desse snippet que você desejar.
Eu nem o uso mais como editor ou IDE, apenas para trabalhar com o git. Interface do usuário limpa e muito direta, além de ser altamente personalizável.
Você pode iniciá-lo na linha de comando e transmitir um único arquivo para o qual deseja abrir ou adicionar sua pasta do projeto (git repo).
O único problema que tive foi atualizar - ao trabalhar com repositórios grandes, o atom pode demorar para atualizar as alterações feitas fora dele. Eu sempre o fecho quando termino e reabri quando quero visualizar minhas alterações / confirmar novamente. Você também pode recarregar a janela com ctrl + shift + f5, que leva apenas um segundo.
E é grátis, é claro.
fonte
Eu uso diferentes ferramentas para mesclar e comparar:
Punho pode ser chamado por:
O segundo é chamado quando você usa
git mergetool
.fonte
Você pode instalar a ferramenta diff / merge do ECMerge no seu Linux, Mac ou Windows. Ele é pré-configurado no Git, portanto, apenas o uso
git mergetool
fará o trabalho.fonte
Se você usa o visual studio , a ferramenta interna Team Explorer é uma ferramenta muito boa para resolver conflitos de mesclagem de git.
fonte
gitx http://gitx.frim.nl/
Alguns erros ao trabalhar com conjuntos de confirmação grandes, mas ótimos para navegar pelas alterações e escolher diferentes alterações para preparar e depois confirmar.
fonte