Re: [ANNOUNCE] Cogito-0.12
- From
Linus Torvalds <torvalds@osdl.org>
- Date
- Jul 7, 2005, 19:04 UTC
- Message-ID
- <Pine.LNX.4.58.0507071158220.3293@g5.osdl.org>
- In-Reply-To
- <7vk6k2sfa4.fsf@assigned-by-dhcp.cox.net>
On Thu, 7 Jul 2005, Junio C Hamano wrote:
Show 7 quoted lines
> > - X.git/objects/pack can have packed GIT archives. I > envision that this will be a series of 5 to 20 MB packs, > occasionally adding a new incremental pack when > X.git/objects/??/ directories accumulate enough standalone > SHA1 files. It is not necessary to have X.git/objects/??/ > files if an object is contained in one of the packs.
Note that I just re-packed the kernel archive on kernel.org, and removed _all_ unpacked files. Once that percolates to the mirrors, the http protocol will be useless without anything like this.
That said, I really think the dumb protocols are useless anyway. No other system supports pure static object pulling anyway, and as far as I'm concerned, I want "rsync" to kind of work (but it won't be optimal, since re-packing will delete all the old objects and replace it with the new pack that is downloaded anew). But plain http? I'm not convinced.
I'd much rather have a "stupid server" that just listens to a port, and basically forks off and executes "git-upload-pack" when it's connected to (perhaps reading the directory name first). Nothing else. Then we can do a security analysis of upload-pack, which should be fairly easy since it's not actually ever _writing_ anything.
At that point, you can do
git pull git://www.kernel.org/pub/scm/git/..
and it would just connect to some default "git port", pass off the directory name, and be done with it - exact same discovery protocol that now use for ssh. And "git clone" would also automatically work.
Linus