)]}'
{
  "commit": "f6a527997743b79d6986a16313a7488cfc53d123",
  "tree": "c1fc3e2d1a6bfd4217c0c61d095de91d9013d78a",
  "parents": [
    "90f7b16b3adc78d4bbabbd426fb69aa78c714f71"
  ],
  "author": {
    "name": "Stefan Beller",
    "email": "sbeller@google.com",
    "time": "Thu May 05 12:52:32 2016 -0700"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Thu May 05 14:51:26 2016 -0700"
  },
  "message": "submodule deinit: require \u0027--all\u0027 instead of \u0027.\u0027 for all submodules\n\nThe discussion in [1] pointed out that \u0027.\u0027 is a faulty suggestion as\nthere is a corner case where it fails:\n\n\u003e \"submodule deinit .\" may have \"worked\" in the sense that you would\n\u003e have at least one path in your tree and avoided this \"nothing\n\u003e matches\" most of the time.  It would have still failed with the\n\u003e exactly same error if run in an empty repository, i.e.\n\u003e\n\u003e        $ E\u003d/var/tmp/x/empty \u0026\u0026 rm -fr \"$E\" \u0026\u0026 mkdir -p \"$E\" \u0026\u0026 cd \"$E\"\n\u003e        $ git init\n\u003e        $ rungit v2.6.6 submodule deinit .\n\u003e        error: pathspec \u0027.\u0027 did not match any file(s) known to git.\n\u003e        Did you forget to \u0027git add\u0027?\n\u003e        $ \u003efile \u0026\u0026 git add file\n\u003e        $ rungit v2.6.6 submodule deinit .\n\u003e        $ echo $?\n\u003e        0\n\nSo instead of a pathspec add the \u0027--all\u0027 option to deinit all submodules\nand add a test to check for the corner case of an empty repository.\n\nThe code only needs to learn about the \u0027--all\u0027 option and doesn\u0027t\nrequire further changes as `git submodule--helper list \"$@\"` will list\nall submodules when \"$@\" is empty.\n\n[1] http://news.gmane.org/gmane.comp.version-control.git/289535\n\nHelped-by: Junio C Hamano \u003cgitster@pobox.com\u003e\nSigned-off-by: Stefan Beller \u003csbeller@google.com\u003e\nReviewed-by: Jonathan Nieder \u003cjrnieder@gmail.com\u003e\nSigned-off-by: Junio C Hamano \u003cgitster@pobox.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "1572f058f59ad1f75c4b5ed6e34fae9110414bad",
      "old_mode": 33188,
      "old_path": "Documentation/git-submodule.txt",
      "new_id": "ad851838cc96df3e6b920c83f62a02061b8cae80",
      "new_mode": 33188,
      "new_path": "Documentation/git-submodule.txt"
    },
    {
      "type": "modify",
      "old_id": "43c68deee9db2b243d39eba704878eb7551ada2d",
      "old_mode": 33261,
      "old_path": "git-submodule.sh",
      "new_id": "fb68f1fa7c35aa319737e8e51e23873a20f9fa4c",
      "new_mode": 33261,
      "new_path": "git-submodule.sh"
    },
    {
      "type": "modify",
      "old_id": "e1abd1923033617540c915af4372ba42936326d0",
      "old_mode": 33261,
      "old_path": "t/t7400-submodule-basic.sh",
      "new_id": "cc3cca09f3743eab042e61804048c4b7b9ef6ad8",
      "new_mode": 33261,
      "new_path": "t/t7400-submodule-basic.sh"
    }
  ]
}
