)]}'
{
  "commit": "404aec7b53107a07f29445580f6b5e7a99419757",
  "tree": "18cce3052ba35a0ba5e3003f9098e97597c361b8",
  "parents": [
    "a0bc2b14a30bef631b91a2ca37c5254d9af44718"
  ],
  "author": {
    "name": "Rahul Yadav",
    "email": "yadavrah@google.com",
    "time": "Mon Oct 12 13:28:18 2026 +0000"
  },
  "committer": {
    "name": "gerrit-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "email": "gerrit-scoped@luci-project-accounts.iam.gserviceaccount.com",
    "time": "Fri Oct 16 00:18:33 2026 -0700"
  },
  "message": "upload: reject --fix with --ignore-hooks or --no-verify\n\n--fix asks the pre-upload hook to apply its fixups, but:\n* --no-verify skips the hook entirely, so --fix silently does nothing.\n* --ignore-hooks uploads the original commits even if the hook fails,\n  so any fixups applied to the working tree are not part of the\n  upload. Whether --fix should then apply fixups or be ignored is\n  ambiguous.\n\nReject both combinations up front, before any hook runs, instead of\npicking an interpretation.\n\nBug: 562921767\nTest: python3 -m pytest tests/test_subcmds_upload.py\nChange-Id: Ib00ae69004642f2e763212b82e7c39f3b4da52eb\nReviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/642664\nTested-by: Rahul Yadav \u003cyadavrah@google.com\u003e\nReviewed-by: Mike Frysinger \u003cvapier@google.com\u003e\nCommit-Queue: Rahul Yadav \u003cyadavrah@google.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "2215f9e8421c74aae1b9e58fa279eb8d6db9350f",
      "old_mode": 33188,
      "old_path": "subcmds/upload.py",
      "new_id": "8b5ae96e2875906712f8920f346f53c4aeed71a8",
      "new_mode": 33188,
      "new_path": "subcmds/upload.py"
    },
    {
      "type": "modify",
      "old_id": "53666fe209086a34eda3b52394822f557e1d2b88",
      "old_mode": 33188,
      "old_path": "tests/test_subcmds_upload.py",
      "new_id": "980520baf7ffab45107514b2811e48caaa778300",
      "new_mode": 33188,
      "new_path": "tests/test_subcmds_upload.py"
    }
  ]
}
