)]}'
{
  "commit": "1a7fd1fb2998002da6e9ff2ee46e1bdd25ee8404",
  "tree": "21ce7a9d3b8950940434751b3acf0df0ae22c3cf",
  "parents": [
    "a124133e1e6ab5c7a9fef6d0e6bcb084e3455b46"
  ],
  "author": {
    "name": "Jeff King",
    "email": "peff@peff.net",
    "time": "Mon Sep 24 04:42:19 2018 -0400"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Thu Sep 27 11:41:31 2018 -0700"
  },
  "message": "fsck: detect submodule paths starting with dash\n\nAs with urls, submodule paths with dashes are ignored by\ngit, but may end up confusing older versions. Detecting them\nvia fsck lets us prevent modern versions of git from being a\nvector to spread broken .gitmodules to older versions.\n\nCompared to blocking leading-dash urls, though, this\ndetection may be less of a good idea:\n\n  1. While such paths provide confusing and broken results,\n     they don\u0027t seem to actually work as option injections\n     against anything except \"cd\". In particular, the\n     submodule code seems to canonicalize to an absolute\n     path before running \"git clone\" (so it passes\n     /your/clone/-sub).\n\n  2. It\u0027s more likely that we may one day make such names\n     actually work correctly. Even after we revert this fsck\n     check, it will continue to be a hassle until hosting\n     servers are all updated.\n\nOn the other hand, it\u0027s not entirely clear that the behavior\nin older versions is safe. And if we do want to eventually\nallow this, we may end up doing so with a special syntax\nanyway (e.g., writing \"./-sub\" in the .gitmodules file, and\nteaching the submodule code to canonicalize it when\ncomparing).\n\nSo on balance, this is probably a good protection.\n\nSigned-off-by: Jeff King \u003cpeff@peff.net\u003e\nSigned-off-by: Junio C Hamano \u003cgitster@pobox.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "c47285652723ab9eaec768e14bb78e1891156628",
      "old_mode": 33188,
      "old_path": "fsck.c",
      "new_id": "5d9b25fac0aebe677dcde3181d7edb3eff820515",
      "new_mode": 33188,
      "new_path": "fsck.c"
    },
    {
      "type": "modify",
      "old_id": "638293f0dab1c69b2f984b69a8bf96a9c2c98de8",
      "old_mode": 33261,
      "old_path": "t/t7417-submodule-path-url.sh",
      "new_id": "756af8c4d6fbd1ba9fb2e4d6fd5b8ae9ddfc34e1",
      "new_mode": 33261,
      "new_path": "t/t7417-submodule-path-url.sh"
    }
  ]
}
