)]}'
{
  "commit": "e17bd99281ae01a758d717bdfaa759bbeefb6149",
  "tree": "a3d9a8c28b5d133eafd6038f2b099138f984cff5",
  "parents": [
    "b66efad2b1f53755a80699dc39f94e2b15d6af67"
  ],
  "author": {
    "name": "Adrian Ratiu",
    "email": "adrian.ratiu@collabora.com",
    "time": "Wed Mar 25 21:55:02 2026 +0200"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Wed Mar 25 14:00:47 2026 -0700"
  },
  "message": "hook: show disabled hooks in \"git hook list\"\n\nDisabled hooks were filtered out of the cache entirely, making them\ninvisible to \"git hook list\". Keep them in the cache with a new\n\"disabled\" flag which is propagated to the respective struct hook.\n\n\"git hook list\" now shows disabled hooks as tab-separated columns,\nwith the status as a prefix before the name (like scope with\n--show-scope). With --show-scope it looks like:\n\n$ git hook list --show-scope pre-commit\nglobal\tlinter\nlocal\tdisabled\tno-leaks\nhook from hookdir\n\nA disabled hook without a command issues a warning instead of the\nfatal \"hook.X.command must be configured\" error. We could also throw\nan error, however it seemd a bit excessive to me in this case.\n\nSuggested-by: Patrick Steinhardt \u003cps@pks.im\u003e\nSigned-off-by: Adrian Ratiu \u003cadrian.ratiu@collabora.com\u003e\nSigned-off-by: Junio C Hamano \u003cgitster@pobox.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4cc65a0dc5970c0a0a4cb7db7a2a1caa3c8e79e9",
      "old_mode": 33188,
      "old_path": "builtin/hook.c",
      "new_id": "f671e7f91a033b87f9484a76745190c2410086a9",
      "new_mode": 33188,
      "new_path": "builtin/hook.c"
    },
    {
      "type": "modify",
      "old_id": "74f5a1df35ace378a27060ad96f9912906ef39bc",
      "old_mode": 33188,
      "old_path": "hook.c",
      "new_id": "cc23276d27f035b65914df53b8f367aabc29a0be",
      "new_mode": 33188,
      "new_path": "hook.c"
    },
    {
      "type": "modify",
      "old_id": "a0432e8307e3968bc73145eb589b1f5246332155",
      "old_mode": 33188,
      "old_path": "hook.h",
      "new_id": "5c5628dd1f822c4e530c1f4d637d4ca825be3cf5",
      "new_mode": 33188,
      "new_path": "hook.h"
    },
    {
      "type": "modify",
      "old_id": "6fc6603da820869ec0fd2edfc87aedfaa3bba704",
      "old_mode": 33261,
      "old_path": "t/t1800-hook.sh",
      "new_id": "8c5237449dc416e4a9d8f8d7514fd19be67f5a8f",
      "new_mode": 33261,
      "new_path": "t/t1800-hook.sh"
    }
  ]
}
