Visualizador de Diferença e Fusão de Texto de 3 Vias
Guia
Visualizador de Diferença e Fusão de Texto de 3 Vias
Cole uma versão base mais duas versões divergentes (A e B) e a ferramenta produz um resultado combinado usando o algoritmo clássico diff3. Linhas que só um lado mudou são combinadas automaticamente; linhas que foram alteradas de forma diferente em ambos os lados são marcadas como conflitos que você pode resolver clicando em Aceitar A, Aceitar B, Manter a Base ou combinar os dois — tudo no lado do cliente, sem necessidade de upload.
Como usar
- Cole o texto original (base) no Base campo. Este é o ancestral comum de que ambas as versões partem.
- Cole a primeira cópia editada no Versão A e a segunda cópia editada no Versão B.
- Escolha um padrão Em Conflito estratégia (mostrar marcadores, preferir A, preferir B ou manter a base).
- Revise o resultado combinado: blocos com bordas verdes OK são combinados automaticamente; blocos com bordas laranjas Conflito mostram as três versões e necessitam de uma decisão.
- Para cada conflito, clique em Aceitar A, Aceitar B, Manter a Base, ou Ambos para confirmar sua escolha. Use Claro para desfazer.
- Copie ou baixe o resultado da Texto combinado quando terminar.
Características
- Merge verdadeiro de 3 versões – a correspondência baseada em LCS identifica pontos estáveis compartilhados por todas as três entradas e agrupa as mudanças entre eles.
- Resolução por conflito – cada conflito é exibido em uma vista lado a lado de A, Base e B com aceitação em um clique.
- Combinar os dois lados – escolha “Ambos (A depois B)” ou “Ambos (B depois A)” quando quiser a união de duas edições em vez de escolher uma.
- Marcadores de conflito padrão – a saída simples usa os marcadores familiares <<<<<<>>>>>> para tornar o resultado amigável às ferramentas do Git.
- Estratégias padrão – defina “Preferir A”, “Preferir B” ou “Manter a Base” para resolver automaticamente todos os conflitos da mesma forma sem precisar clicar em cada um.
- Fica no seu navegador – sem necessidade de viagem para o servidor, sem upload; seguro para código-fonte, rascunhos ou qualquer texto confidencial.
Por que um merge de 3 versões?
Um merge de 2 versões só pode dizer que dois textos diferem — não pode dizer qual lado alterou intencionalmente algo. Um merge de 3 versões introduz um ponto de partida comum (a base) e usa as diferenças a partir desse ponto de referência para decidir a intenção. Se apenas um lado mudou uma linha, o merge pode aplicar essa mudança automaticamente. Se ambos os lados mudaram a mesma região de forma diferente, o merge corretamente exibe um conflito em vez de silenciosamente descartar o trabalho de um autor.
Perguntas frequentes
-
O que é o algoritmo diff3?
Diff3 é o algoritmo canônico de merge de 3 versões. Ele calcula a sequência comum mais longa entre a base e cada variante, em seguida, percorre os pontos de ancoragem compartilhados para classificar as regiões entre eles. Regiões onde apenas uma variante difere da base são aplicadas automaticamente; regiões onde ambas as variantes diferem da base de maneiras incompatíveis se tornam conflitos. Ele é a base da estratégia de merge clássica do Git e da ferramenta GNU diff3.
-
Como funciona um merge baseado em LCS?
A Sequência Comum Mais Longa (LCS) é a sequência mais longa de linhas que aparece em ambas as entradas na mesma ordem, permitindo lacunas. Uma tabela dinâmica padrão calcula seu comprimento em tempo O(m*n). A retrocesso pela tabela produz os pares de linhas correspondentes, e tudo fora desses pares é tratado como inserção ou exclusão. A LCS fornece um conjunto mínimo e intuitivo de edições sem exigir alinhamento exato.
-
Por que algumas mudanças são combinadas automaticamente e outras se tornam conflitos?
Durante um merge de 3 versões, o algoritmo compara cada lacuna entre os pontos de ancoragem três vezes: base vs A, base vs B e A vs B. Se apenas um lado difere da base, a mudança é ambígua e é aplicada automaticamente. Se ambos os lados fizeram mudanças idênticas, o merge mantém uma cópia. Apenas quando ambos os lados mudaram a região de forma diferente o merge gera um conflito, porque não há forma automática de honrar ambas as intenções ao mesmo tempo.
-
O que significam os marcadores <<<<<<>>>>>>?
Esses marcadores vêm do formato de conflito diff3 do Git. O bloco entre <<<<<<>>>>>> mostra a versão B. Ver a base original ao lado das duas edições torna mais fácil decidir qual lado manter ou como combiná-las.
-
O merge baseado em linhas é diferente do merge baseado em caracteres ou palavras?
Sim. Um merge baseado em linhas trata cada linha como a unidade atômica mais pequena, o que corresponde à forma como códigos-fonte, arquivos de configuração e a maioria dos documentos em texto simples são escritos. Um merge baseado em caracteres ou palavras pode gerar edições mais finas, mas tende a criar conflitos ruídosos e difíceis de resolver em textos com reflow. O merge baseado em linhas é a escolha padrão para ferramentas que imitam o comportamento do Git.
Instale nossas extensões
Adicione ferramentas de IO ao seu navegador favorito para acesso instantâneo e pesquisa mais rápida
恵 O placar chegou!
Placar é uma forma divertida de acompanhar seus jogos, todos os dados são armazenados em seu navegador. Mais recursos serão lançados em breve!
Ferramentas essenciais
Ver tudo Novas chegadas
Ver tudoAtualizar: Nosso ferramenta mais recente foi adicionado em 12 de junho de 2026
