)]}'
{
  "commit": "5a8046ab33d383b758e7e283405697957e4691c0",
  "tree": "feb806a82b6c53d930598faba644c366e2d9b40a",
  "parents": [
    "c4a0c8845e2426375ad257b6c221a3a7d92ecfda",
    "221a877d4785030e07d20977418609257fd606d8"
  ],
  "author": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Mon Dec 22 14:57:48 2025 +0900"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Mon Dec 22 14:57:48 2025 +0900"
  },
  "message": "Merge branch \u0027ps/odb-alternates-object-sources\u0027\n\nCode refactoring around alternate object store.\n\n* ps/odb-alternates-object-sources:\n  odb: write alternates via sources\n  odb: read alternates via sources\n  odb: drop forward declaration of `read_info_alternates()`\n  odb: remove mutual recursion when parsing alternates\n  odb: stop splitting alternate in `odb_add_to_alternates_file()`\n  odb: move computation of normalized objdir into `alt_odb_usable()`\n  odb: resolve relative alternative paths when parsing\n  odb: refactor parsing of alternates to be self-contained\n",
  "tree_diff": []
}
