)]}'
{
  "commit": "feaaea4c123e6b94ebbdc2135278946ee9cc8eed",
  "tree": "6a3c2af1cf301432ac609512998093468684e198",
  "parents": [
    "70b783c3a194746d8b747677615f33b94454146f"
  ],
  "author": {
    "name": "Patrick Steinhardt",
    "email": "ps@pks.im",
    "time": "Thu Oct 23 09:16:17 2025 +0200"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Tue Nov 04 07:32:25 2025 -0800"
  },
  "message": "builtin/show-ref: convert to use `reference_get_peeled_oid()`\n\nThe git-show-ref(1) command has multiple different modes:\n\n  - It knows to show all references matching a pattern.\n\n  - It knows to list all references that are an exact match to whatever\n    the user has provided.\n\n  - It knows to check for reference existence.\n\nThe first two commands use mostly the same infrastructure to print the\nreferences via `show_one()`. But while the former mode uses a proper\niterator and thus has a `struct reference` available in its context, the\nlatter calls `refs_read_ref()` and thus doesn\u0027t. Consequently, we cannot\neasily use `reference_get_peeled_oid()` to print the peeled value.\n\nAdapt the code so that we manually construct a `struct reference` when\nverifying refs. We wouldn\u0027t ever have the peeled value available anyway\nas we\u0027re not using an iterator here, so we can simply plug in the values\nwe _do_ have.\n\nWith this change we now have a `struct reference` available at both\ncallsites of `show_one()` and can thus pass it, which allows us to use\n`reference_get_peeled_oid()` instead of `peel_iterated_oid()`.\n\nSigned-off-by: Patrick Steinhardt \u003cps@pks.im\u003e\nSigned-off-by: Junio C Hamano \u003cgitster@pobox.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "4803b5e59865f60641b48d4e5c5a8971ddb5eb7c",
      "old_mode": 33188,
      "old_path": "builtin/show-ref.c",
      "new_id": "4d4984e4e0c244b32d46affc658a699bb04f1c82",
      "new_mode": 33188,
      "new_path": "builtin/show-ref.c"
    }
  ]
}
