Перейти до вмісту

Аналізатор уніфікованого diff

Аналізуйте уніфікований diff або файл .patch: змінені файли, додані та видалені рядки.

Введення
Вихід

Аналізатор уніфікованого diff

Вставте уніфікований diff — результат `diff -u`, `git diff` або вміст файлу `.patch` — і цей інструмент створює огляд за файлами: скільки рядків було додано та видалено в кожному файлі, а також підсумки по всьому diff. Він призначений для швидкого вивчення великого патча перед відкриттям його у повноцінному інструменті code review або для вставлення стислого викладу diffstat-стилю в описання pull request або changelog.

Сортуйте список файлів за шляхом або за кількістю змін, щоб бачити найбільше змінені файли в першу чергу. Увімкніть опцію "Показувати окремі блоки змін", щоб розділити кожен файл на окремі блоки `@@` замість просто підсумку на рівні файлу. "Виявляти перейменування та зміни прав доступу" розпізнає заголовки перейменувань та змін режиму git і помічає ці файли замість просто перелічення нового шляху. "Ігнорувати зміни лише в пробілах" виключає пару видаленого/доданого рядка, які відрізняються лише пробілами — корисно після того як форматер або лінтер обробив файл. Отфільтруйте за розширенням, щоб зосередитися лише на файлах `.ts`, наприклад, у змішаному фронтенд/бекенд патчі, та виключите згенерований результат, такий як `dist/*` або `*.min.js`, щоб артефакти збірки не заповнювали огляд.

Формат результату перемикається між простою текстовою таблицею, таблицею Markdown, готовою до вставлення в описання pull request, та CSV для електронних таблиць. Опція "Показувати співвідношення додань/видалень" додає стовпець зі співвідношенням доданих до видалених рядків за файлами, що швидко показує файли, які в основному містять новий код, на відміну від в основному видаленого коду. Зміни двійкових файлів розпізнаються та повідомляються з нульовою кількістю рядків, а не пропускаються або неправильно підраховуються.

Усе працює локально у вашому браузері — diff ніколи не залишає ваш пристрій, що важливо, коли він походить з приватного репозиторію. Скопіюйте огляд, завантажте його як файл .txt або відправте прямо на вхід іншого інструменту, щоб продовжити роботу.

FAQ

Які формати diff він приймає?
Уніфікований формат diff з `diff -u`, `git diff`, `git format-patch` та стандартних файлів `.patch`, з заголовком `diff --git` або без нього.
Як він рахує додані та видалені рядки?
Він рахує кожен рядок `+` та `-` всередині кожного блоку. Коли увімкнена опція "Ігнорувати зміни лише в пробілах", пара видаленого/доданого рядка, які ідентичні після видалення пробілів, не рахується з обох сторін.
Чи може він показувати перейменовані або змінені за правами доступу файли?
Так. Коли увімкнена опція "Виявляти перейменування та зміни прав доступу", файли, позначені git з заголовками `rename from`/`rename to` або `old mode`/`new mode`, позначаються відповідно, показуючи старий та новий шлях для перейменування.
Чи може він обробляти diff без заголовка `diff --git`?
Так. Простий результат `diff -u old new`, який має лише рядки `---`/`+++`/`@@` та не має специфічних для git заголовків, обробляється однаково.
Чи завантажується мій diff кудись?
Ні. Аналіз працює повністю у вашому браузері — diff та будь-який код, який він містить, ніколи не залишає ваш пристрій.