Revisão de configuração

Comparar YAMLConfira os dados e a edição do arquivo

Compare fluxos YAML 1.2 pela estrutura ou veja as alterações no texto original.

Comparar YAML

Antes

Depois

As duas entradas são processadas neste navegador; o conteúdo não é enviado a um servidor.

Exemplo: ["/0/metadata/time"]. /0 é o primeiro documento; /0/ indica sua chave vazia. Use ~0 para ~ e ~1 para /. As exclusões removem subárvores das contagens e relatórios estruturais; os índices não mudam. O texto continua sem filtros.

YAML 1.2 core + tags timestamp/binary explícitas. A ordem das chaves é ignorada; documentos e listas formam pares por índice. Inteiros e floats são diferentes. Timestamps são comparados pela escrita, não pelo instante.

Por lado: 200.000 caracteres / 800.000 bytes UTF-8; 100 documentos, 50.000 nós expandidos, profundidade 100 e 5.000 entradas de âncoras/aliases somadas. Até 5.000 alterações, 1 milhão de caracteres de caminhos e 4 milhões no relatório. Worker: 5 s. Texto: 500 ms, distância de edição 2.000, 50.000 tokens.

Insira as configurações ou inicie a comparação.

Alterações

Comparar YAML é útil quando uma revisão mistura ajustes de ambiente com comentários novos e chaves reorganizadas. A visão de estrutura ajuda a conferir o que muda nos dados; o texto original mostra como a alteração foi escrita.

Este comparador YAML aceita dois arquivos YAML locais e considera todos os documentos de cada fluxo. O diff de YAML usa a posição para formar pares, sem presumir que nomes iguais identificam o mesmo recurso.

Por que comparar YAML neste fluxo?

Separe a revisão dos dados da leitura do arquivo

Acompanhar cada documento

Comparar YAML considera o fluxo inteiro, inclusive documentos vazios explícitos. Dentro de um mapeamento, reorganizar chaves não muda a estrutura; trocar documentos de lugar muda os pares e aparece no resultado.

Duas pilhas de documentos são ligadas pela posição, com um valor alterado e um documento adicional destacados.

Ler comentários sem confundir os dados

Uma observação sobre implantação pode mudar sem afetar o valor de nenhuma chave. No texto original, essa edição aparece junto com espaços, ordem e finais de linha. Excluir um caminho da estrutura não esconde a fonte nesta visão.

As mesmas entradas seguem para uma árvore de dados e uma visão separada de linhas com comentários e ordem destacados.

Prepare o relatório para a revisão

O resultado depende do pareamento, do filtro e da visão escolhida

01

Confira a ordem dos documentos

O primeiro documento de um lado é comparado com o primeiro do outro. Os caminhos começam em /0, /1 e assim por diante. Inserir um documento no meio desloca os pares seguintes; nomes de recursos Kubernetes não geram um realinhamento automático.

02

Exclua subárvores pelo caminho

Use um array de strings JSON, como ["/0/metadata/time"]. O caminho exclui o nó e seus descendentes. / vira ~1 e ~ vira ~0; escapes JSON permitem representar quebras de linha. /0 exclui o primeiro documento inteiro, enquanto /0/ identifica apenas sua chave vazia.

03

Exporte a visão certa

A estrutura exporta alterações JSON tipadas depois dos filtros. O texto exporta blocos sem filtros, inclusive os inalterados. Qualquer edição desativa o relatório antigo imediatamente. A comparação automática espera 350 ms; a manual aceita Ctrl/Cmd+Enter. Uma substituição aplicada pode ser desfeita uma vez.

Posições e tipos continuam explícitos

O relatório mantém informações que uma conversão comum perderia

Fluxos completos

Documentos adicionados ou removidos recebem uma marca própria. Listas são comparadas pelo índice original; inserir um item no começo pode alterar várias posições seguintes, sem ser apresentado como um movimento inferido.

Números sem arredondamento na comparação

Inteiros mantêm todos os dígitos dentro do limite do token. Floats decimais usam coeficiente e expoente exatos: 1.0 equivale a 1e0, mas não ao inteiro 1. Zero negativo de float é diferente do positivo; NaN é considerado igual a NaN nesta revisão.

Filtros alcançam os contêineres

As subárvores excluídas saem das duas entradas antes da comparação, mesmo em um contêiner adicionado ou trocado por um escalar. Os índices das listas não são compactados. As contagens abrangem somente as alterações restantes.

Formato de revisão tipado

Escalares têm tipo explícito e valor em string, preservando inteiros grandes e floats não finitos. Contêineres mantêm chaves ou índices. Tela, cópia e download usam o mesmo relatório atual; ele descreve diferenças e não é um patch aplicável.

O que a comparação considera equivalente

Conheça o esquema aceito e os limites operacionais

Um subconjunto de YAML 1.2
O parser usa YAML 1.2 core com tags timestamp e binary explícitas. São rejeitados versão 1.1 declarada, chaves complexas ou não textuais, duplicatas, tags desconhecidas, set/omap/pairs e escritas escalares não aceitas. YES e NO continuam strings. Nem toda representação YAML válida é suportada.
Aliases e mesclagem opcional
Um alias usa a âncora anterior mais próxima com o mesmo nome no mesmo documento. Referências futuras, entre documentos e ciclos são erros. A mesclagem começa desligada; ligada, prioriza as primeiras fontes e depois as chaves explícitas, sem mesclagem profunda. << entre aspas ou marcado como string continua uma chave comum.
Timestamps pela escrita e binários por bytes
Um timestamp explicitamente marcado é comparado pela escrita original, incluindo todas as casas fracionárias e anos antigos. Não há validação de calendário nem equivalência de fusos: não se compara o instante. Binários exigem Base64 canônico com padding, aceitam espaços YAML e são comparados pelos bytes decodificados.
Filtro não é ocultação de dados
As exclusões afetam apenas contagens e relatórios estruturais. Editores, prévias de substituição e relatórios de texto continuam completos, inclusive com blocos inalterados. O comparador não tenta reconhecer nomes de senhas.
Revisão sem mesclar ou publicar
Não há pareamento por identidade, detecção de movimentos em listas, mesclagem de três versões, renderização Helm, importação por URL ou histórico no servidor. Renderize Helm fora da página antes de colar. A estrutura ignora a apresentação; o texto a preserva.
Limites com interrupção explícita
Cada entrada permite 200.000 caracteres e 800.000 bytes UTF-8, 100 documentos, 50.000 nós expandidos, profundidade 100 e 5.000 entradas combinadas de âncoras/aliases. Limites adicionais: 5.000 alterações, 1 milhão de caracteres de caminhos somando os dois lados, 1.000 por token numérico e 4 milhões no relatório. Filtros: 100 caminhos e 20.000 caracteres. Worker: 5 s; texto: 500 ms, distância de edição 2.000 e 50.000 tokens. Falhas bloqueiam a exportação em vez de gerar resultados parciais. O processamento de escalares expandidos e o YAML gerado têm, cada um, um limite de 2 milhões de caracteres.

Dúvidas sobre comparar YAML

Arquivos locais, aliases e versões

Posso comparar mais de duas versões de uma vez?

São duas entradas por comparação. Cada uma pode conter vários documentos, mas eles não representam uma terceira versão. Para comparar YAML de várias revisões, mantenha uma base escolhida e faça comparações sucessivas.

O que acontece com âncoras e aliases?

Aliases são expandidos por valor dentro do mesmo documento. A âncora precisa aparecer antes; ciclos e referências entre documentos são rejeitados. Para interpretar as chaves de mesclagem <<, ative a opção específica.

Por que a indentação com tabulação falha?

YAML exige espaços na indentação que define a estrutura. Troque tabulações por espaços sem mudar a hierarquia desejada. A visão de texto pode comparar o arquivo ainda inválido; a visão estrutural exige sintaxe aceita.

Posso colar JSON para fazer a comparação?

Sim, objetos JSON com chaves em string cabem no subconjunto aceito, desde que respeitem os limites e não tenham chaves duplicadas. A distinção numérica entre inteiro e float é mantida.

Preciso enviar os arquivos para um servidor?

Não. Cada lado abre um arquivo UTF-8 local e pede aplicar a prévia antes de substituir o conteúdo. O processamento acontece no navegador, sem histórico de servidor ou link de compartilhamento. O relatório de texto que você decidir enviar a alguém continua sem filtros.

Faltou algum caso de revisão?

Comece a comparar YAML

Comparar YAML ajuda a conferir os dados com seus tipos. Depois revise o texto original para decidir qual relatório faz sentido compartilhar.

Relatórios do texto original continuam sem filtros.