Political and Technical Implications of GitTorrent
lkcl writes "The GitTorrent
Protocol (GTP) is a protocol for collaborative
git repository distribution across the Internet.
Git
promises to be a distributed software management tool, where a repository
can be distributed. Yet, the mechanisms used to date to actually
'distribute,' such as ssh, are very much still centralized.
GitTorrent makes
Git truly distributed. The initial plans are for reducing mirror
loading, however the full plans include totally distributed development:
no central mirrors whatsoever. PGP signing (an existing feature of git)
and other web-of-trust-based mechanisms will take over from protocols on ports
(e.g. ssh) as the access control 'clearing house.'
The implications of a truly distributed revision control system are
truly staggering: unrestricted software freedom. The playing field
is leveled in so many ways, as 'The Web Site' no longer becomes the
central choke-point of control. Coming just in time for that
all-encompassing Free Software revolution hinted at by
The Rebellion Against Vista,
this article will explain more fully
some of the implications that make this quiet and technically
brilliant project, GitTorrent,
so important to Software Freedom, from both technical and
political perspectives."
This is cool, your code can be free. But unfortunately you're still stuck with hosting the documentation on a central website of some sort.
no - you're not :) read the article: it mentions that static content such as that generated by ikiwiki could perfectly well be generated by a locally-checked-out (gittorrent-distributed) copy of the documentation
extend that concept a little further (one step at a time!) and you have, as you rightly mention:
a standard for hosting the documentation website. IE PHP + SQlite + GitTorrent docRoot == Distributed website.
yes! although, to be much better, technically, you'd have a distributed SQL server - a peer-to-peer SQL server. there's a project that IngreSQL are keeping an eye on, called "d", that might show some promise, here.
Could even contain Trac or something, so all the bug tracking is also in the GitTorrent repository.
yes!
_now_ you're getting it :)
As mentioned in the summary, PGP. Each branch will be signed with a PGP key, so if you trust the person who owns the key then you trust the code. If someone tampers with it, then they won't be able to sign it. You can still grab their branch, but only if you trust them.
I am TheRaven on Soylent News
From TFA : The possibilities that GitTorrent opens up are just mind-blowing. Here are a few: * Imagine that an entire project - its web site, documentation, wiki, bug-tracker, source code and binaries are all managed and stored in a peer-to-peer distributed git repository. o To view the web site, you either go to the main site, http://web-site.org/ or, if you are offline or want faster access, you go to the locally checked out copy.
'Whilst' is still widely used in the UK.
I'm going to transform myself into a mighty hawk. Either that or I'll just go and work at Dixons, haven't decided yet.
You're supposed to have a connection to the "web of trust" system. The system isn't meant to work based on the idea of, "Oh, there are a bunch of keys that have signed each other. Must be fine."
SIG: HUP
I forgot to mention that hosting a repository in Freenet actually does have a couple of advantages over having it sit on your (or somewone else's) web server:
Files in freenet are distributed throughout the network, and persist as long as *someone* on the network still has the file.
If you are writing a program that government X doesn't like (for kicks, let's say you're living in China and you're developing a 'democracy simulator'), you can host the program in Freenet anonymously - Freenet is designed to make it extremely difficult for anyone to figure out who inserted a particular file, or even on what computers it is being stored.
Freenet also provides authentication. SSK/USK sites can only be updated by the person who has the insert key. So if you trust the guy that publishes freenet:USK@IdWcgxE2jxySY....nOtKZyFY40,AQACAAE/TOGoSFCP/2/, and you're reasonably sure that nobody else has an insert key, then you can trust that whatever gets put on that Freesite was really put there by him.
Duct tape, XML, democracy: Not doing the job? Use more.
Here's a clip for an example, for those unfamiliar:
http://video.google.com/videoplay?docid=7026801162637347552&ei=eyc4SdWjOoL8rAKQiLiTDg&q=genesis+of+the+daleks+davros
"MIT betrayed all of its basic principles."
debian has a keysigning process that creates a web of trust.
http://www.chaosreigns.com/code/sig2dot/debian.html
http://www.debian.org/events/keysigning
The last project entries/downloads are from February 2008. Why such a hype over a dead/dormant project?
Is sourceforge firewalled anywhere?
Also, I didn't know that the backbone was strained by a debian release. Did I miss the /. article, or was that not considered "news for nerds"?
Help! I'm a slashdot refugee.
I don't see the need, though. Git is small and lightweight. Large-ish projects just work off of Github, which is fast enough. If the central repository goes down, you have other means (mailing list, etc) for getting back in touch -- granted, GitTorrent would do that for you, but it seems a premature optimization when a central repository works most of the time.
Don't thank God, thank a doctor!
JFGIgger please.
What's the problem? "whilst" is a word dickhead.
I call bullshit and gross exagerration. First, GitTorrent lacks any implementation, there is only some code testing concepts in the GTP 0.1, the draft of protocol. Second, Git is distributed version control system by itself, and doesn't need GitTorrent for this: GitTorrent is meant only to distribute the load of initial clone and fetching large parts of history among peers (among clients), reducing load on the server it clones from; no more.
A group of developers can start a private project without central hosting using git already, today. Look at the man page for "git-bundle". Git commits can already be exchaged via e-mail.
They've already renamed it MirrorSync and redesigned the entire concept to fit better into the way git repositories already talk to each other.
09F91102 no, 455FE104 nope, F190A1E8 uh-uh, 7A5F8A09 that's not it, C87294CE no. Ah! 452F6E403CDF10714E41DFAA257D313F.