Расширенный каноникализатор JSON
Go to file
Гершман Антон Лейбович 9d7ed9e603 Нормальный README
2026-06-23 14:43:45 +03:00
JsonCanicalizer.Test Нормальный README 2026-06-23 14:43:45 +03:00
JsonCanonicalizer Текущая версия каноникализатора JSON 2026-06-23 13:36:13 +03:00
JsonCanonicalizer.BL Текущая версия каноникализатора JSON 2026-06-23 13:36:13 +03:00
.gitignore Initial commit 2026-06-23 10:25:34 +00:00
JsonCanonicalizer.sln Текущая версия каноникализатора JSON 2026-06-23 13:36:13 +03:00
nuget.config Текущая версия каноникализатора JSON 2026-06-23 13:36:13 +03:00
README.md Нормальный README 2026-06-23 14:43:45 +03:00

json-canonicalizer

Расширенный каноникализатор JSON

Получает JSON на консольный вход, каноникализирует его и выдаёт на консольный выход.

Выполняет:

  • структурное форматирование JSON, переданного однострочно;
  • сортировку свойств объекта по имени;
  • если все элементы списка являются объектами и имеют свойства "iq" либо при его отсутствии "guid", сортирует список по iq ?: guid.

Предназначение

Служит фильтром для использования в репозитории Git, предназначенном для сравнения сериализованных в JSON объектов.

Для использования репозиторий следует настроить следующим образом:

git config filter.json-canonical.clean "путь/JsonCanonicalizer.exe"
git config filter.json-canonical.smudge "cat"
git config filter.json-canonical.required true

и в .gitattributes прописать

*.json filter=json-canonical