Re: Re: Re: [ANNOUNCE] git-pasky-0.3

Petr Baudis
2005-04-13T09:42:43Z

Dear diary, on Wed, Apr 13, 2005 at 11:25:04AM CEST, I got a letter
where David Woodhouse <dwmw2@infradead.org> told me that...
> On Wed, 2005-04-13 at 10:59 +0200, Petr Baudis wrote:
> > Theoretically, you are never supposed to share your index if you work
> > in fully git environment.
>
> Maybe -- if we are prepared to propagate the BK myth that network
> bandwidth and disk space are free.
>
> Meanwhile, in the real world, it'd be really useful to support sharing.

It's fine to share the objects database. If you want to share the
directory cache, you are doing something wrong, though. What do you need
it for?

> I'd even like to see support for using multiple branches checked out of
> the same .git/ repository. We already cope with having multiple branches
> _in_ the repository -- all we need to do is cope with multiple indices
> too, so we can have different versions checked out.

I'm working on that right now. (Well, I wish I would, if other things
didn't keep distracting me.)

The idea is to have a command which will do something like:

mkdir .git
ln -s $origtree/heads $origtree/objects $origtree/tags .git
cp $origtree/HEAD .git
cd ..
read-tree $(tree-id)

Voila. Now you have a new tree with almost no current neither future
overhead.

This will be used to do the out-tree merges. Command for user to do this
will likely also make it a regular branch, doing

ln -s $(realpath git/HEAD) .git/heads/branchname

so that you can reference to it easily from your other branches.

Would this do what you want?

--
Petr "Pasky" Baudis
Stuff: http://pasky.or.cz/
98% of the time I am right. Why worry about the other 3%.