)]}'
{
  "commit": "21b7fbe14d9457400a90683a9bd3febe4b7f8840",
  "tree": "658712eafc8754a4b7e2382d299c8dd207baaf75",
  "parents": [
    "b967f5c17a04d6a01c234427b3b5c9b49dff6ca5"
  ],
  "author": {
    "name": "Mike Frysinger",
    "email": "vapier@google.com",
    "time": "Wed Feb 26 23:53:36 2020 -0500"
  },
  "committer": {
    "name": "David Pursehouse",
    "email": "dpursehouse@collab.net",
    "time": "Sat Feb 29 07:22:08 2020 +0000"
  },
  "message": "project: fix m/ pseudo ref handling with git worktrees\n\nSince most ref namespaces are shared among all worktrees, trying to\nset the pseudo m/\u003cbranch\u003e in the common git repo ends up clobbering\neach other when using shared checkouts.  For example, in CrOS:\n  \u003cproject path\u003d\"src/third_party/kernel/v3.8\"\n           name\u003d\"chromiumos/third_party/kernel\"\n           revision\u003d\"refs/heads/chromeos-3.8\" /\u003e\n  \u003cproject path\u003d\"src/third_party/kernel/v3.10\"\n           name\u003d\"chromiumos/third_party/kernel\"\n           revision\u003d\"refs/heads/chromeos-3.10\" /\u003e\n\nTrying to set m/master in chromiumos/third_party/kernel.git/ will\nkeep clobbering the other.\n\nInstead, when using git worktrees, lets set the m/ pseudo ref to\npoint into the refs/worktree/ namespace which is unique to each\ngit worktree.  So we have in the common dir:\n  chromiumos/third_party/kernel.git/:\n    refs/remotes/m/master:\n      ref: refs/worktree/m/master\nAnd then in each worktree we point refs/worktree/m/master to the\nrespective manifest revision expression.  Now people can use the\nm/master in each git worktree and have it resolve to the right\ncommit for that worktree.\n\nBug: https://crbug.com/gerrit/12404\nChange-Id: I78814bdd5dd67bb13218c4c6ccd64f8a15dd0a52\nReviewed-on: https://gerrit-review.googlesource.com/c/git-repo/+/256952\nTested-by: Mike Frysinger \u003cvapier@google.com\u003e\nReviewed-by: David Pursehouse \u003cdpursehouse@collab.net\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "02b98cba981b3b1f5c5f3786bda848fc979048ec",
      "old_mode": 33188,
      "old_path": "git_refs.py",
      "new_id": "e2b62ab229f8de5883d7de49d6c557aace958c9a",
      "new_mode": 33188,
      "new_path": "git_refs.py"
    },
    {
      "type": "modify",
      "old_id": "b93dcd58898cb210b3a4c093a6f9952d245f1e2b",
      "old_mode": 33188,
      "old_path": "project.py",
      "new_id": "fe55371eaac09b365742d2bb4db2a5d2f5f24b80",
      "new_mode": 33188,
      "new_path": "project.py"
    }
  ]
}
