)]}'
{
  "commit": "7ba06bc3d026cee54437db5cfddfffe7b4d7a187",
  "tree": "eec56549e6d2e5593981ec2540b77f4a46e80309",
  "parents": [
    "6cfa633565cc16f77d6e6d56fa608680828105a1",
    "460bc3ce7386582b3259f8e3a2c1ace443ddb1ae"
  ],
  "author": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Mon May 13 23:50:34 2019 +0900"
  },
  "committer": {
    "name": "Junio C Hamano",
    "email": "gitster@pobox.com",
    "time": "Mon May 13 23:50:34 2019 +0900"
  },
  "message": "Merge branch \u0027pw/rebase-i-internal\u0027\n\nThe internal implementation of \"git rebase -i\" has been updated to\navoid forking a separate \"rebase--interactive\" process.\n\n* pw/rebase-i-internal:\n  rebase -i: run without forking rebase--interactive\n  rebase: use a common action enum\n  rebase -i: use struct rebase_options in do_interactive_rebase()\n  rebase -i: use struct rebase_options to parse args\n  rebase -i: use struct object_id for squash_onto\n  rebase -i: use struct commit when parsing options\n  rebase -i: remove duplication\n  rebase -i: combine rebase--interactive.c with rebase.c\n  rebase: use OPT_RERERE_AUTOUPDATE()\n  rebase: rename write_basic_state()\n  rebase: don\u0027t translate trace strings\n  sequencer: always discard index after checkout\n",
  "tree_diff": []
}
