)]}'
{
  "commit": "178e1deaae33f879ea687e85ac72455b3072b0d8",
  "tree": "649d84cda0fd2ee79be730bd3aa37764dc98c6ab",
  "parents": [
    "c27e559da5b26faa31858fe6dc5492d4f605b867"
  ],
  "author": {
    "name": "Jonathan Nieder",
    "email": "jrnieder@gmail.com",
    "time": "Fri Mar 09 22:07:22 2012 -0600"
  },
  "committer": {
    "name": "Jonathan Nieder",
    "email": "jrnieder@gmail.com",
    "time": "Fri Mar 09 22:07:22 2012 -0600"
  },
  "message": "fast-import: don\u0027t allow \u0027ls\u0027 of path with empty components\n\nAs the fast-import manual explains:\n\n\tThe value of \u003cpath\u003e must be in canonical form. That is it must\n\tnot:\n\t. contain an empty directory component (e.g. foo//bar is invalid),\n\t. end with a directory separator (e.g. foo/ is invalid),\n\t. start with a directory separator (e.g. /foo is invalid),\n\nUnfortunately the \"ls\" command accepts these invalid syntaxes and\nresponds by declaring that the indicated path is missing.  This is too\nsubtle and causes importers to silently misbehave; better to error out\nso the operator knows what\u0027s happening.\n\nThe C, R, and M commands already error out for such paths.\n\nReported-by: Andrew Sayers \u003candrew-git@pileofstuff.org\u003e\nAnalysis-by: David Barr \u003cdavidbarr@google.com\u003e\nSigned-off-by: Jonathan Nieder \u003cjrnieder@gmail.com\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "fff285cd0f73ca2bfe5b76aa3d87a156ad7808ff",
      "old_mode": 33188,
      "old_path": "fast-import.c",
      "new_id": "47f61f3cba7b7a4cde8ae116cbce38116562bda6",
      "new_mode": 33188,
      "new_path": "fast-import.c"
    },
    {
      "type": "modify",
      "old_id": "6b1ba6c858562b7c085951fb1d69d4d2371e866c",
      "old_mode": 33261,
      "old_path": "t/t9300-fast-import.sh",
      "new_id": "2cd0f0614d2daa6622161cdc8afce34e22328a97",
      "new_mode": 33261,
      "new_path": "t/t9300-fast-import.sh"
    }
  ]
}
