Dear git people,
Maybe this is common knowledge, but I thought I should mention it in
case it isn't. I had a git repository in a directory A and I wanted
to check out a branch of the repository to a different directory B.
So I created B/.git and filled it with symlinks pointing to the files
in A/.git, except for index and HEAD because those need to be
different for each checkout; then I ran git-checkout <branch> to fill
B. Now I can view and edit each checkout independently, but they are
backed by the same set of objects and refs. However, I must remember
to commit to each branch only through the checkout whose HEAD is
linked to it, otherwise that checkout won't get updated.
Matt