)]}'
{
  "log": [
    {
      "commit": "e284ad1d1a2c6fa0e0ac800e87b2607f9bda339e",
      "tree": "fcf35ac784ec2e13c78ee3882ccb1fec0ad3d049",
      "parents": [
        "3e5481999d5f853e19ee5caaaaa968fc4b5176ab"
      ],
      "author": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Tue Nov 04 07:37:10 2008 -0800"
      },
      "committer": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Wed Nov 05 18:08:32 2008 -0800"
      },
      "message": "Add \u0027repo init --mirror\u0027 to download a complete forrest\n\nThe mirror option downloads a complete forrest (as described by the\nmanifest) and creates a replica of the remote repositories rather\nthan a client working directory.  This permits other clients to\nsync off the mirror site.\n\nA mirror can be positioned in a \"DMZ\", where the mirror executes\n\"repo sync\" to obtain changes from the external upstream and\nclients inside the protected zone operate off the mirror only,\nand therefore do not require direct git:// access to the external\nupstream repositories.\n\nSigned-off-by: Shawn O. Pearce \u003csop@google.com\u003e\n"
    },
    {
      "commit": "9fa44db94bfabcf43160316660801a2c1db2dbb9",
      "tree": "4a8ffcba60cfd6c02e88c9f401a66d4cab1b18b0",
      "parents": [
        "c9ef744c7b5f6bcab446cf0a0bc9cc1b016dd5f8"
      ],
      "author": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Mon Nov 03 11:24:59 2008 -0800"
      },
      "committer": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Mon Nov 03 11:24:59 2008 -0800"
      },
      "message": "Introduce \u0027repo abandon \u003cbranchname\u003e\u0027 as an alias for \u0027git branch -D\u0027\n\nThis destroys a local development branch, removing all history\nof that branch from ever existing.  If the branch is currently\nchecked out we move back to the upstream revision.\n\nSigned-off-by: Shawn O. Pearce \u003csop@google.com\u003e\n"
    },
    {
      "commit": "c9ef744c7b5f6bcab446cf0a0bc9cc1b016dd5f8",
      "tree": "ff1bd7309698ef0dd312daf205512b1fa96d3e8d",
      "parents": [
        "438ee1cad98ac32509718976e63c36a449bfb679"
      ],
      "author": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Mon Nov 03 10:32:09 2008 -0800"
      },
      "committer": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Mon Nov 03 11:00:44 2008 -0800"
      },
      "message": "Install a default pre-auto-gc hook in all repositories\n\nThis hook is evaluated by `git gc --auto` to determine if it is a\ngood idea to execute a GC at this time, or defer it to some later\ndate.  When working on a laptop its a good idea to avoid GC if you\nare on battery power as the extra CPU and disk IO would consume a\ndecent amount of the charge.\n\nThe hook is the standard sample hook from git.git contrib/hooks,\nlast modified in git.git by 84ed4c5d117d72f02cc918e413b9861a9d2846d7.\nI added the GPLv2 header to the script to ensure the license notice\nis clear, as it does not match repo\u0027s own APLv2 license.\n\nWe only update hooks during initial repository creation or on\na repo sync.  This way we don\u0027t incur huge overheads from the\nhook stat operations during \"repo status\" or even the normal\n\"repo sync\" cases.\n\nSigned-off-by: Shawn O. Pearce \u003csop@google.com\u003e\n"
    },
    {
      "commit": "df830f12389984adeeba04659615b9fc230f2db3",
      "tree": "ea5857656f63f9b375dbb9851e8801062570c24d",
      "parents": [
        "90be5c0839762d14bdee75d121c3923ed91c8404"
      ],
      "author": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Thu Oct 30 09:21:43 2008 -0700"
      },
      "committer": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Thu Oct 30 09:21:43 2008 -0700"
      },
      "message": "Remove import_tar, import_zip and the \u003csnapshot\u003e elements\n\nNow that repo relies only on the git data stream (as it is much\nfaster to download through) we don\u0027t really need to be parsing the\n\u003csnapshot\u003e elements within manifest.  Its a lot of complex code to\nconvert the tar (or zip) through to a fast import stream, and we\njust aren\u0027t calling it anymore.\n\nSigned-off-by: Shawn O. Pearce \u003csop@google.com\u003e\n"
    },
    {
      "commit": "632768bc65ae0f1dc9eb9260c9146c42d9965a18",
      "tree": "f8fc564a40e5886c74062d6be751ca4c2769721c",
      "parents": [
        "0758d2f1d61288c83282749d2b36958d2c289e7f"
      ],
      "author": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Thu Oct 23 11:58:52 2008 -0700"
      },
      "committer": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Thu Oct 23 14:43:28 2008 -0700"
      },
      "message": "Teach repo how to download changes to the local checkout\n\nNow `repo download . 1402` would download the change numbered 1402\ninto the current project and check it out for the user, using a\ndetached HEAD.  `repo sync .` would back out of the change and\nreturn to the upstream version.\n\nMultiple projects can be fetched at once by listing them out on\nthe command line as different arguments.\n\nIndividual patch sets can be selected by adding a \u0027/n\u0027 to indicate\nthe n-th patch set should be downloaded instead of the default of\npatch set 1.\n\nSigned-off-by: Shawn O. Pearce \u003csop@google.com\u003e\n"
    },
    {
      "commit": "0758d2f1d61288c83282749d2b36958d2c289e7f",
      "tree": "484a67366aeb84d83147eeec2ba4fd459dbf0879",
      "parents": [
        "bb0ee8057165a9d54e1e1ab9addb15a2a57ccfc1"
      ],
      "author": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Wed Oct 22 13:13:40 2008 -0700"
      },
      "committer": {
        "name": "Shawn O. Pearce",
        "email": "sop@google.com",
        "time": "Wed Oct 22 13:13:40 2008 -0700"
      },
      "message": "Show which user account each change was uploaded under\n\nThis way users are well aware of which account we used when the\nuploads are complete, so they can be certain to sign into the web\napplication with that user identity.\n\nSigned-off-by: Shawn O. Pearce \u003csop@google.com\u003e\n"
    },
    {
      "commit": "cf31fe9b4fb650b27e19f5d7ee7297e383660caf",
      "tree": "d04ca6a45d579dca5e5469606c48c405aee68f4b",
      "parents": [],
      "author": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "committer": {
        "name": "The Android Open Source Project",
        "email": "initial-contribution@android.com",
        "time": "Tue Oct 21 07:00:00 2008 -0700"
      },
      "message": "Initial Contribution\n"
    }
  ]
}
