Formateur Diff

Comparez les différences de texte et de code avec mise en évidence formatée et vue côte à côte

Fonctionne localement

Version originale

Modifié

Résultat du diff

Cliquez sur Comparer pour voir les différences entre les deux côtés

Astuces

  • Utilisez une indentation cohérente dans les deux textes pour une comparaison ligne par ligne plus précise.
  • La vue unifiée est idéale pour les petits changements. La vue côte à côte est meilleure pour les grandes différences.
  • ajouté   supprimé   modifié
  • Utilisez le bouton d'inversion pour inverser le sens de comparaison et voir les ajouts comme des suppressions.
  • Ctrl/Cmd + Entrée lance la comparaison depuis l'un ou l'autre champ.

Deux modes de diff, choisis automatiquement

Le Data Diff part de ce que vous collez. Quand les deux côtés sont parsés comme du JSON, il passe en diff structurel ; pour tout le reste, il compare ligne par ligne. Vous pouvez aussi verrouiller un mode manuellement avec les onglets au-dessus du résultat.

Ce que rapporte le diff structurel JSON

  • Ajouté — une clé ou un index qui n'existe que sur le côté modifié, avec un aperçu de sa valeur.
  • Supprimé — une clé ou un index qui n'existe que sur le côté original.
  • Modifié — le même chemin contient une valeur différente de chaque côté, affiché sous forme avant → après.
  • Type modifié — le chemin contient un objet d'un côté et un scalaire ou un tableau de l'autre.
  • Chaque entrée comporte un chemin dans la même notation $.store.books[0].title que celle utilisée par les Inspecteurs JSON, XML et YAML, pour pouvoir y accéder directement dans la source.

Diff texte, quand vous en avez besoin

La comparaison ligne par ligne met en évidence chaque ligne ajoutée et supprimée avec les numéros de ligne. Elle fonctionne sur du code, des journaux, des fichiers de configuration et tout texte — y compris le JSON dont le formatage a changé mais pas les données.

Exemple : ce que le mode JSON voit que le mode texte ne voit pas

Les deux extraits ci-dessous ne diffèrent que par l'ordre des clés et l'indentation. Le diff texte signale presque toutes les lignes comme modifiées ; le diff structurel JSON signale correctement zéro changement.

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

Où cela s'intègre dans votre flux de travail

Data Diff est l'étape de comparaison de l'atelier. Envoyez n'importe quel document ici depuis les autres outils :

Questions fréquentes

Réponses aux questions courantes sur le formatage Diff Formatter

Oui, notre formateur diff est entièrement gratuit et ne nécessite aucune inscription. Tout le traitement s'effectue dans votre navigateur.

Vous pouvez comparer tout contenu texte : code, fichiers de configuration, JSON, XML, texte brut ou tout autre format textuel.

Les lignes ajoutées sont affichées avec un fond vert, les lignes supprimées avec un fond rouge, et les lignes modifiées montrent les deux versions côte à côte.

Oui. Cliquez sur le bouton d'inversion pour inverser les textes original et modifié, transformant les ajouts en suppressions et vice versa.

L'outil utilise l'algorithme diff de Myers, le même algorithme utilisé par Git pour la comparaison de texte, garantissant des diffs précis et minimaux.

Le format diff unifié (-u), tel que produit par git diff, diff -u et tous les grands systèmes de gestion de versions - une ou plusieurs sections de fichiers, chacune avec des en-têtes ---/+++, des marqueurs de hunk @@ et des lignes +/- ou de contexte. GNU diffutils documente le format exact ; le formateur remet en forme les hunks avec des numéros de ligne alignés et une coloration syntaxique.

@@ -3,7 +3,8 @@ signifie : dans l'ancien fichier, à partir de la ligne 3, 7 lignes sont affichées ; dans le nouveau fichier, la section correspondante commence à la ligne 3 et s'étend sur 8 lignes. La lecture des compteurs indique d'un coup d'œil l'ampleur du changement - ici, une ligne a été ajoutée. Le formateur conserve ces marqueurs intacts car patch(1) et git apply en dépendent.

Non - il formate et explique les patches, il ne les applique pas. Pour appliquer, utilisez git apply ou patch -p1 ; pour fusionner des hunks en conflit, l'outil de fusion de votre VCS. Le formatage est délibérément en lecture seule afin que vous puissiez coller n'importe quel patch en toute sécurité, y compris ceux contenant des hunks rejetés ou en conflit, pour une revue lisible.

{-- * 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 --}}

Outils Connexes