A theme of this thread is that different solutions are appropriate for different use cases. This means abstracting the filesystem out and having emerge query a repository, which might be the filesystem, a RESTful service, a database, or something else:
- Accessing the tree (not a git repo) through HTTP would mean no need for syncing or local storage, which would be very handy for some embedded scenarios, as well as ephemeral ("cloud") virtual systems.
- Funtoo's portage can read files directly out of git pack files, saving a lot of disk space and inodes, among other advantages.
Of course, as Fabian points out, writing and vending these interfaces is an engineering and operational burden for whoever provides them. Git sync server farms can be made, but if GitHub's experience is any indication, it's not super easy.
On the development side, It makes a lot of sense to me that Gentoo developers (or the developers of whatever distribution) might want to use git in order to support more decentralized workflows, something more like how the Linux kernel is written. It might also ease the work of an enterprise or spin-off distribution that wants to maintain their own fork of the Portage tree with particular patches, keywords, or additional packages.
Even if it were so, rsync would probably be the most appropriate way for most end users to get their portage tree goodness. But I think drobbins' effort to support other use cases is very worthwhile.
On Jan 22, 2012, at 3:14 AM, Konstantin Tokarev wrote:
> 21.01.2012, 23:57, "Peter Abrahamsen" <rainhead@...>:
> I believe drobbins is working on abstracting the repository so it could in theory be accessed over HTTP.
> I'm not sure I understand your point, however git through HTTP is slooooow.