Re: git clone / svn checkout
Bruno De Bondt <bruno@dewereldmorgen.be> writes:
> Just started using Git, coming from SVN.
>
> Something I regularly do in SVN, is checking out part of a repository,
> instead of the complete repository.
On the other hand in SVN you have multiple projects in a single repository (under single repository hierarchy / svnroot).
Show 11 quoted lines
> Consider the following: I have a local repository for
> development. On my testing server, I only (SVN) check out part of
> this repository, eg. the document root of a website (and not all the
> project management documents, which are in the same SVN repository,
> but not needed on the testing server).
>
> How would I do this in Git, ie. only get a specific part of a
> repository? I feel that this is very much against the whole idea of Git
> (where, as far as I understand Git now, you work with complete clones of
> repositories), but is there a way to do this? Or should I just clone
> complete repositories on my testing server as well?
In this case it would be possible, I think, to put project management documents and website itself in different git repositories, and toe them together using submodules (see git-submodule manpage, and documentation on Git Wiki and elsewhere).
There is support in git nowadays (acquired quire recently) to *checkout* only part of repository (so called "sparse checkout"), but you still need to clone whole repository.
There was some proof-of-concept work on *partial clone* support; see git mailing list archives. This is nevertheless quote hard problem to solve correctly.
--
Jakub Narebski
Poland
ShadeHawk on #git