Official git export

Peter Jeremy peterjeremy at acm.org
Sun Sep 4 08:37:01 UTC 2011


On 2011-Sep-03 05:11:07 -0700, perryh at pluto.rain.com wrote:
>A few hundred MB of disk space is nothing.  Having to _download_
>a few hundred MB of source code, that one already has, is _not_
>"nothing" unless one has a rather large pipe.

If you already have the source code, why would you be downloading
it again?  Typically, if you keep a local copy of the repo, you
would be checking out from it, rather than using csup or similar.

>One way to mitigate this would be to provide the ability to
>download and install VCS metadata (back-deltas, commit comments,
>etc.) for particular files and directories "as needed".

Based on the description, I'll take "metadata" to mean the VCS
repository itself, rather than VCS-related metadata that is added
to a checked-out working directory.

Whilst this was fairly easy for CVS, it's not practical for SVN
because the metadata is stored per-commit, rather than per-file.

>  If that
>level of granularity is problematic, just splitting the metadata
>into 5 groups would help:
>
>  group            contents                             size *
>
>  infrastructure   all files directly in /usr/src; and   66 MB
>                   subdirs etc, include, lib, libexec,
>                   release, rescue, share, tools.
>
>  contrib          /usr/src/contrib                     232 MB
>
>  crypto           /usr/src/{crypto,kerberos5,secure}    40 MB
>
>  kernel           /usr/src/sys                         143 MB
>
>  other            /usr/src/{bin,cddl,games,gnu,         50 MB
>                   sbin,usr.bin,usr.sbin}

I don't believe this is practical given the way FreeBSD and SVN
work.  From the SVN perspective, it's not practical to disentagle
the content in that way.  From a FreeBSD perspective, I don't think
it'll work - you can't do much without "infrastructure".  "contrib"
is referenced from "infrastructure" and "other".  "crypto" includes
some historic (but not current) references to "contrib".

>For that matter, FreeBSD could provide the VCS metadata corresponding
>to each release as a separate ISO, so those who need it can obtain
>and install it.  Those for whom large downloads are a problem could
>buy it on CD.

Once upon a time, the release CDs did include the CVS tree but it
simply became too big.  And, since you can checkout any point in
history I don't believe having a -release repo CD/DVD adds any real
value.  You just need a copy of the repo after the relevant release -
this can be downloaded via CTM/ftp or csup for CVS and svn can do it's
own downloading.  My guess is that most people for whom large
downloads present a problem know someone who has ready access to the
repo and could burn a CD/DVD for them.

-- 
Peter Jeremy
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-arch/attachments/20110904/62613ca9/attachment.pgp


More information about the freebsd-arch mailing list