Formatador Diff

Compare diferenças de texto e código com destaque formatado e visualização lado a lado

Executa localmente

Versão original

Modificado

Resultado do Diff

Clique em Comparar para ver as diferenças entre os dois lados

Dicas

  • Use indentação consistente em ambos os textos para comparação linha por linha mais precisa.
  • A visualização unificada é melhor para pequenas alterações. Lado a lado é melhor para diferenças maiores.
  • adicionado   removido   alterado
  • Use o botão de troca para reverter a direção da comparação e ver adições como remoções.
  • Ctrl/Cmd + Enter compara a partir de qualquer campo.

Dois modos de diff, escolhidos automaticamente

O Data Diff parte daquilo que colar. Quando ambos os lados são interpretados como JSON, muda para um diff estrutural; para tudo o resto, compara linha a linha. Também pode fixar um modo manualmente com os separadores acima do resultado.

O que o diff estrutural de JSON reporta

  • Adicionado — uma chave ou índice que existe apenas no lado modificado, com uma pré-visualização do seu valor.
  • Removido — uma chave ou índice que existe apenas no lado original.
  • Alterado — o mesmo caminho tem um valor diferente em cada lado, mostrado como antes → depois.
  • Tipo alterado — o caminho contém um objeto de um lado e um escalar ou array do outro.
  • Cada entrada inclui um caminho na mesma notação $.store.books[0].title usada pelos Inspetores JSON, XML e YAML, para que possa saltar diretamente para ele no documento original.

Diff de texto, quando precisar

A comparação linha a linha destaca cada linha adicionada e removida com números de linha. Funciona com código, logs, ficheiros de configuração e qualquer texto — incluindo JSON cuja formatação mudou mas cujos dados não.

Exemplo: o que o modo JSON deteta e o modo texto não

Os dois fragmentos abaixo diferem apenas na ordem das chaves e na indentação. O diff de texto assinala quase todas as linhas como alteradas; o diff estrutural de JSON indica corretamente zero alterações.

A
{
  "name": "web",
  "version": "1.0"
}
B
{
  "version": "1.0",
  "name": "web"
}

Onde esta ferramenta se enquadra no seu fluxo de trabalho

O Data Diff é o passo de comparação da workbench. Envie qualquer documento para aqui a partir das outras ferramentas:

Perguntas frequentes

Respostas a perguntas comuns sobre formatação Diff Formatter

Sim, nosso formatador diff é completamente gratuito sem necessidade de registro. Todo o processamento acontece no seu navegador.

Você pode comparar qualquer conteúdo de texto: código, arquivos de configuração, JSON, XML, texto simples ou qualquer outro formato baseado em texto.

Linhas adicionadas são mostradas com fundo verde, linhas removidas com fundo vermelho, e linhas alteradas mostram ambas as versões lado a lado.

Sim. Clique no botão de troca para reverter os textos original e modificado, transformando adições em remoções e vice-versa.

A ferramenta usa o algoritmo diff Myers, que é o mesmo algoritmo usado pelo Git para comparação de texto, garantindo diffs precisos e mínimos.

O formato unified diff (-u), tal como é produzido pelo git diff, diff -u e por todos os principais sistemas de controlo de versões - uma ou mais secções de ficheiro, cada uma com cabeçalhos ---/+++, marcadores de hunk @@ e linhas +/- /de contexto. O GNU diffutils documenta o formato exato; o formatador reformata os hunks com números de linha alinhados e realce de sintaxe.

@@ -3,7 +3,8 @@ diz: no ficheiro antigo, a partir da linha 3, são apresentadas 7 linhas; no ficheiro novo, a secção correspondente começa na linha 3 e abrange 8 linhas. Ler as contagens permite perceber à primeira vista a dimensão da alteração - aqui foi adicionada uma linha. O formatador mantém estes marcadores intactos porque o patch(1) e o git apply dependem deles.

Não - formata e explica patches, não os aplica. Para aplicar, utilize git apply ou patch -p1; para fazer merge de hunks em conflito, a ferramenta de merge do seu VCS. A formatação é deliberadamente só de leitura, para que possa colar qualquer patch em segurança, incluindo os que têm hunks rejeitados ou em conflito, e revê-lo de forma legível.

{-- * External Resources Component(#19 Phase 3b 内容佐证工程) * 工具页「权威引用」区块:RFC / W3C / WHATWG / ECMA / IANA / 官方规范站 / 官方语言文档 / Wikipedia。 * * - 接受 :slug 属性 → 经 config/tool-sources.php 家族矩阵渲染该工具的权威引用 * - slug 未命中映射时不渲染(无权威来源的工具静默跳过) * - 链接 title 保持英文(引用源专名);description 经 * common.resources.descriptions.{key} 本地化,lang 未命中回退英文(线上不裸奔) * - 链接保持 dofollow(rel="noopener noreferrer") * * @param string|null $slug --}}

Ferramentas Relacionadas