json-canonicalizer/README.md

1.3 KiB
Raw Blame History

json-canonicalizer

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

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

Выполняет:

  • структурное форматирование JSON, переданного однострочно;
  • сортировку свойств объекта по имени;
  • если все элементы списка являются объектами и имеют свойства "id" либо при его отсутствии "guid", сортирует список по id ?: 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