copying git repositories ...
Hi Andres & Brian,
Thanks for your help;
On Fri, 2011-02-25 at 21:55 +0100, Andres Freund wrote:
Show 7 quoted lines
> > On Tue, 2011-02-22 at 10:55 -0500, Brian Gernhardt wrote:
> > > FYI: `git clone foo bar` will use hard-links to copy the object
> > > files and is both very fast and space efficient. (See the
> > > description of `--local` in git-clone(1), which is used by
> > > default for local repositories since git 1.5.3.) It's also
> > > guaranteed to work while the correctness of `cp -lR` depends
> > > on implementation details of git.
> > Sounds like just what I need. Unfortunately, it didn't clone some of
> > the pieces I needed; eg. other configured remotes, I ended up with just
> > 'origin' - which was unexpected (and less wonderful than cp -lR ;-).
> See the --mirror option for clone
I tried all of this; none of it did what I had hoped :-)
git clone src dest
yields a different repository, with a totally different config /
remotes setup - missing all but a new synthetic origin pointing at the
local files and which can't be git pulled from in the normal way; ie. it
behaves extremely differently to the cp -lR result.
git clone --mirror src dest
yields a similar problem-repository, which is for extra measure a bare
checkout, and thus also not what I need.
I'm really looking for an equivalent of 'cp -lR foo baa' that:
* uses hard links to save space
* produces precisely-a-duplicate repository
For #2 - I would use the verb 'clone' except of course the 'clone' I'm
talking about would be one that is identical, the same, with no
differences (not eg. missing a few limbs ;-)
Clearly cp -lR is bad & evil and all that; but it yields exactly what I
need to effectively manage my local trees, multiple checkouts, and
different builds without burning the entire disk.
Is there a blessed 'cp -lR' wrapper for git that is functionally
identical ? [ and I'm happy of course for some slow divergence, and loss
of efficiency as I pull more changes from time to time into each tree ].
Sorry for the noise,
Michael.
--
michael.meeks@novell.com <><, Pseudo Engineer, itinerant idiot