Aller au contenu
Tout en local

Analyseur de diff unifié

Résumez un diff unifié ou un fichier .patch : fichiers modifiés, lignes ajoutées et supprimées.

Entrée
Sortie

Analyseur de diff unifié

Collez un diff unifié — la sortie de `diff -u`, `git diff`, ou le contenu d'un fichier `.patch` — et cet outil construit un résumé par fichier : combien de lignes ont été ajoutées et supprimées dans chaque fichier, et les totaux dans l'ensemble du diff. Il est conçu pour parcourir rapidement un grand correctif avant de l'ouvrir dans un outil complet d'examen de code, ou pour coller un résumé de style diffstat dans une description de pull request ou un journal des modifications.

Triez la liste de fichiers par chemin ou par nombre de modifications pour voir d'abord les fichiers les plus modifiés. Activez "Afficher les blocs individuels" pour décomposer chaque fichier en ses blocs de modification `@@` au lieu d'un simple total au niveau du fichier. "Détecter les renommages et les changements de mode" reconnaît les en-têtes de renombrage et de changement de mode de git et étiquette ces fichiers au lieu de lister simplement leur nouveau chemin. "Ignorer les modifications d'espaces blancs uniquement" ignore une paire de ligne supprimée/ajoutée qui ne diffère que par l'espacement — utile après qu'un formateur ou un linter ait modifié un fichier. Filtrez par extension pour vous concentrer, par exemple, uniquement sur les fichiers `.ts` dans un correctif frontend/backend mixte, et excluez la sortie générée telle que `dist/*` ou `*.min.js` afin que les artefacts de construction ne gonflent pas le résumé.

Le format de sortie alterne entre un tableau en texte brut, un tableau Markdown prêt à coller dans une description de pull request, et CSV pour les feuilles de calcul. "Afficher le ratio ajout/suppression" ajoute une colonne avec le ratio ajout/suppression par fichier, ce qui est un moyen rapide de repérer les fichiers qui sont principalement du nouveau code par rapport aux suppressions. Les modifications de fichiers binaires sont reconnues et rapportées avec des compteurs de lignes nuls plutôt que d'être ignorées ou mal comptabilisées.

Tout s'exécute localement dans votre navigateur — le diff ne quitte jamais votre appareil, ce qui importe quand il provient d'un référentiel privé. Copiez le résumé, téléchargez-le en tant que fichier .txt, ou envoyez-le directement à l'entrée d'un autre outil pour continuer à travailler.

FAQ

Quels formats de diff accepte-t-il ?
Sortie de diff unifié de `diff -u`, `git diff`, `git format-patch` et fichiers `.patch` standard, avec ou sans la ligne d'en-tête `diff --git`.
Comment compte-t-il les lignes ajoutées et supprimées ?
Il compte chaque ligne `+` et `-` dans chaque bloc. Avec "Ignorer les modifications d'espaces blancs uniquement" activé, une paire de ligne supprimée/ajoutée qui est identique une fois l'espace blanc supprimé n'est pas comptabilisée d'aucun côté.
Peut-il afficher les fichiers renommés ou les changements de mode ?
Oui. Avec "Détecter les renommages et les changements de mode" activé, les fichiers que git a marqués avec les en-têtes `rename from`/`rename to` ou `old mode`/`new mode` sont étiquetés en conséquence, affichant l'ancien et le nouveau chemin pour un renommage.
Gère-t-il les diffs sans en-tête `diff --git` ?
Oui. La sortie `diff -u old new` simple, qui n'a que les lignes `---`/`+++`/`@@` et aucun en-tête spécifique à git, est analysée de la même manière.
Mon diff est-il téléchargé n'importe où ?
Non. L'analyse s'exécute entièrement dans votre navigateur — le diff, et tout code qu'il contient, ne quitte jamais votre appareil.