title: How can I have multiple working directories with Git?
body: <p>I'm not sure if this is something supported by Git, but in theory it seems like it should work to me.</p>
  <p>My workflow often involves my editing of files in multiple branches simultaneously. In other words, I often want to open a few files in one branch is while I edit the contents of another file in another branch.</p>
  <p>My typical solution to this is to make two checkouts, but it's a shame I can't share branches and refs between them. What I would like is to just have two working directories managed by the same <code>.git</code> folder.</p>
  <p>I'm aware of local <code>git clone</code> solutions (the default, which is to hardlink shared objects, and the <code>--shared</code> option, which sets up an alternate object store with the original repo), but these solutions only cut down on disk space usage, and especially in the case of <code>--shared</code>, seem fraught with peril.</p>
  <p>Is there a way to use one <code>.git</code> folder, and have two working directories backed by it? Or is Git hardcoded to have just one working directory checked out at any time?</p>