An extra point is that what Git downloads is not the raw copies of the files. Rather it is a well compacted version of all the files and version data.

As long as the repository does not have very large or binary files, the compaction is better than simple zip archives because all the files are compacted _together_ so common text and spaces between files is noticed and 'removed'.

So you should find the initial shallow clone to be quite quick.

Philip
----- Original Message ----- From: "Igor Djordjevic" <[email protected]>
Hi Michael,

On top of what Philip already mentioned about shallow clone (in case you
don`t need history), you can also use "sparse checkout"[1]
<https://git-scm.com/docs/git-read-tree#_sparse_checkout> for the case you
don`t need all the files, either. An example:

   git clone --no-checkout --depth 1 https://github.com/gnustep/gap.git
   cd gap
   git config core.sparseCheckout true
   echo "user-apps/FlexiSheet/*" >> .git/info/sparse-checkout
   git checkout


Note that you still *do have *all the files inside ".git" folder, just not
checked out... One of the core Git philosophies is that project repository
contains everything, and you get (to work with) everything, being a major
drawback in working with huge repositories - but there`s work in progress
in that regards, which is what Philip also addresses in second part of his
message :)

Regards, Buga

[1] https://git-scm.com/docs/git-read-tree#_sparse_checkout

On Tuesday, December 19, 2017 at 12:25:14 AM UTC+1, Michael Gersten wrote:

Is there a way to get a partial repository, such as
https://github.com/gnustep/gap/tree/master/user-apps/FlexiSheet

without getting every app there?
--- Entertaining minecraft videos
http://YouTube.com/keybounce



--
You received this message because you are subscribed to the Google Groups "Git for human beings" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected].
For more options, visit https://groups.google.com/d/optout.


--
You received this message because you are subscribed to the Google Groups "Git for 
human beings" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to