)]}'
{
  "commit": "19376104a8251a7e6c56579cdcd2eb0a106d1fd6",
  "tree": "556c2836d2a935bd743dbca50a8b84fef05130ae",
  "parents": [
    "ed178ef13a26136d86ff4e33bb7b1afb5033f908"
  ],
  "author": {
    "name": "Jeff King",
    "email": "peff@peff.net",
    "time": "Mon Jun 15 14:27:22 2015 -0400"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Mon Jun 15 13:11:17 2015 -0700"
  },
  "message": "Revert \"stash: require a clean index to apply\"\n\nThis reverts commit ed178ef13a26136d86ff4e33bb7b1afb5033f908.\n\nThat commit was an attempt to improve the safety of applying\na stash, because the application process may create\nconflicted index entries, after which it is hard to restore\nthe original index state.\n\nUnfortunately, this hurts some common workflows around \"git\nstash -k\", like:\n\n    git add -p       ;# (1) stage set of proposed changes\n    git stash -k     ;# (2) get rid of everything else\n    make test        ;# (3) make sure proposal is reasonable\n    git stash apply  ;# (4) restore original working tree\n\nIf you \"git commit\" between steps (3) and (4), then this\njust works. However, if these steps are part of a pre-commit\nhook, you don\u0027t have that opportunity (you have to restore\nthe original state regardless of whether the tests passed or\nfailed).\n\nIt\u0027s possible that we could provide better tools for this\nsort of workflow. In particular, even before ed178ef, it\ncould fail with a conflict if there were conflicting hunks\nin the working tree and index (since the \"stash -k\" puts the\nindex version into the working tree, and we then attempt to\napply the differences between HEAD and the old working tree\non top of that). But the fact remains that people have been\nusing it happily for a while, and the safety provided by\ned178ef is simply not that great. Let\u0027s revert it for now.\nIn the long run, people can work on improving stash for this\nsort of workflow, but the safety tradeoff is not worth it in\nthe meantime.\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": "cc28368b01fc218f32ae98c21cce4d7f84c68eb0",
      "old_mode": 33261,
      "old_path": "git-stash.sh",
      "new_id": "d4cf818be9488f1b94fdf4766a8f73db6bfd1029",
      "new_mode": 33261,
      "new_path": "git-stash.sh"
    },
    {
      "type": "modify",
      "old_id": "0746eeeff70c29c91accacdfa1efa4bc2e612715",
      "old_mode": 33261,
      "old_path": "t/t3903-stash.sh",
      "new_id": "f179c93ddfade2034273ab15ad2054c36ad313b2",
      "new_mode": 33261,
      "new_path": "t/t3903-stash.sh"
    }
  ]
}
