* http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134
@ 2010-11-27 17:33 Luke Kenneth Casson Leighton
2010-11-27 18:36 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Ævar Arnfjörð Bjarmason
0 siblings, 1 reply; 10+ messages in thread
From: Luke Kenneth Casson Leighton @ 2010-11-27 17:33 UTC (permalink / raw)
To: git
On Wed, Sep 22, 2010 at 11:20 AM, Luke Kenneth Casson Leighton
<luke.leighton@gmail.com> wrote:
> i trust that nobody will make the comment "but source code couldn't
> possibly be considered dangerous enough to block using ACTA" and this
> might go some way towards explaining one - not all - one i repeat just
> one of the factors why i believe that free software development
> _needs_ tools which can side-step single-point-of-failure locations
> that can be blocked by stupid fucking "agreements" like ACTA.
i trust that the above subject-line comment, or more specifically its
constituent links, begins to hint at why i believe it is important
that git-over-p2p be given a higher priority than it is at present.
you can easily join the dots to see where this government insanity is
going: it won't be long before this insanity is utilised to take
control of free software web sites just because they happen to be
hosting tools which MIGHT be utilised "for copyright infringment".
it's bad enough that the DMCA exists and can be used to intimidate
sourceforget into removing rtmpdump - now imagine if someone decided
to take control of sourceforget ok actually yeah maybe that's not so
great a loss after all but it's the PRINCIPLE damnit :)
l.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 2010-11-27 17:33 http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Luke Kenneth Casson Leighton @ 2010-11-27 18:36 ` Ævar Arnfjörð Bjarmason 2010-11-27 19:06 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Luke Kenneth Casson Leighton 0 siblings, 1 reply; 10+ messages in thread From: Ævar Arnfjörð Bjarmason @ 2010-11-27 18:36 UTC (permalink / raw) To: Luke Kenneth Casson Leighton; +Cc: git On Sat, Nov 27, 2010 at 18:33, Luke Kenneth Casson Leighton <luke.leighton@gmail.com> wrote: > I believe it is important that git-over-p2p be given a higher > priority than it is at present. We give "priority" to the stuff people submit patches for. There isn't a git-over-p2p because nobody is working on it, would you like to work on it? I'm also not convinced that this is actually needed. It's trivial to set up a p2p-like network by just emulating a darknet by manually adding remotes & fetching/pushing. That's not viable for the stuff that usually gets distributed on p2p networks, but it sure is viable when you have people working on the same codebase. Which would be the use case for a git-over-p2p client, right? ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 2010-11-27 18:36 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Ævar Arnfjörð Bjarmason @ 2010-11-27 19:06 ` Luke Kenneth Casson Leighton 2010-11-27 19:28 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Jonathan Nieder 2010-11-27 20:19 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Ævar Arnfjörð Bjarmason 0 siblings, 2 replies; 10+ messages in thread From: Luke Kenneth Casson Leighton @ 2010-11-27 19:06 UTC (permalink / raw) To: Ævar Arnfjörð Bjarmason; +Cc: git On Sat, Nov 27, 2010 at 6:36 PM, Ævar Arnfjörð Bjarmason <avarab@gmail.com> wrote: > On Sat, Nov 27, 2010 at 18:33, Luke Kenneth Casson Leighton > <luke.leighton@gmail.com> wrote: > >> I believe it is important that git-over-p2p be given a higher >> priority than it is at present. > > We give "priority" to the stuff people submit patches for. There isn't > a git-over-p2p because nobody is working on it, would you like to work > on it? i was / have been. unfortunately it's unfunded work, and, thanks to receiving less money than i require for living and for feeding my family i now face a court hearing on 16th december (3 weeks time) which has the aim and ultimate goal of making us homeless. i therefore respectfull request that you please don't try to make me feel like i _should_ be working on this in order to "earn your respect" ( that goes for you too, johnathon ). > I'm also not convinced that this is actually needed. It's trivial to > set up a p2p-like network by just emulating a darknet by manually > adding remotes & fetching/pushing. ah.. but that's the single-use case for a single shared repository. git "as-is" the fetch/push over http is limited to a single repository. i'm thinking more in terms of a global network, with searches for checksummed objects "accidentally" potentially coming from wildly different repositories. the work i did a few months ago showed that just "dropping" git on top of e.g. the bittorrent protocol as-is, files/dirs mapped to git objects, wouldn't cut the mustard, because the bloody bittorrent protocol "chunks" system treats the entire fileset as an ordered but contiguous "stream" of data (metadata in the actual .torrent file says how long each of the files are and in what order they are, and this is utilised at the receiving end to reconstruct the files after the datablocks have been received. it means that if you want just one single file, even of 2 bytes in length, you might have to pull 2 blocks of e.g. 256k and grab the byte and the end of the 1st and the byte at the beginning of the 2nd! yukk...) but i believe that a system where each git object was given its own .torrent file _would_ work, and you utilise DHT or other mechanism (perhaps even a torrent containing the metadata!) to get the structural information. the success of this model depends on everyone being connected to everyone (a global network), in order to be able to do a DHT search for the node(s) that are seeding that git object's torrent file. the "global network" concept has the advantage of being far more robust in the face of DNS take-overs, as you actually just need to know _one_ DNS name out of potentially an unlimited number of DNS names (or even an IP address or set of IP addresses) and you're joined to other peers. > That's not viable for the stuff that usually gets distributed on p2p > networks, but it sure is viable when you have people working on the > same codebase. codebase-in-a-git, wiki-in-a-git, website-in-a-git, backups-of-filesystem-in-a-git (joey hess, one of the most amazing debian developers around, has done all these things :) > Which would be the use case for a git-over-p2p client, > right? yes it would... but i'm thinking well beyond that :) at first glance the concept of git-over-darknet for example looks great. however it doesn't satisfy what i believe to be one of the key strategic requirements to be "many-pushers to many-pullers real-time resilient". lose access to the darknet, or even if the git server dies, what do you do?? if it's a darknet, you've got serious problems: you can't find out who it was! git-over-p2p on the other hand _would_ be [m-p-t-m-p-r-t-r], because once the git-objects have been pulled by one client, they can be pulled from that client by other clients too. it's this feature of p2p distribution that is so distinct from the way in which git is normally described as "a distributed revision control system", and makes it a bugger to explain what the fuss is all about over this git-p2p stuff :) l. ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 2010-11-27 19:06 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Luke Kenneth Casson Leighton @ 2010-11-27 19:28 ` Jonathan Nieder 2010-11-27 20:19 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Ævar Arnfjörð Bjarmason 1 sibling, 0 replies; 10+ messages in thread From: Jonathan Nieder @ 2010-11-27 19:28 UTC (permalink / raw) To: Luke Kenneth Casson Leighton; +Cc: Ævar Arnfjörð Bjarmason, git Luke Kenneth Casson Leighton wrote: > i > therefore respectfull request that you please don't try to make me > feel like i _should_ be working on this in order to "earn your > respect" ( that goes for you too, johnathon ). Just for clarity: I never meant to imply such a thing. Just that messages like the one you just sent have quite an off-topic feeling and that this mailing list is better for design advice, usage advice, bug reporting, patch review, and similar things. Just my own opinion. Kind regards, Jonathan ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 2010-11-27 19:06 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Luke Kenneth Casson Leighton 2010-11-27 19:28 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Jonathan Nieder @ 2010-11-27 20:19 ` Ævar Arnfjörð Bjarmason 2010-11-29 10:12 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Will Palmer 1 sibling, 1 reply; 10+ messages in thread From: Ævar Arnfjörð Bjarmason @ 2010-11-27 20:19 UTC (permalink / raw) To: Luke Kenneth Casson Leighton; +Cc: git On Sat, Nov 27, 2010 at 20:06, Luke Kenneth Casson Leighton <luke.leighton@gmail.com> wrote: > On Sat, Nov 27, 2010 at 6:36 PM, Ævar Arnfjörð Bjarmason > <avarab@gmail.com> wrote: >> On Sat, Nov 27, 2010 at 18:33, Luke Kenneth Casson Leighton >> <luke.leighton@gmail.com> wrote: >> >>> I believe it is important that git-over-p2p be given a higher >>> priority than it is at present. >> >> We give "priority" to the stuff people submit patches for. There isn't >> a git-over-p2p because nobody is working on it, would you like to work >> on it? > > i was / have been. unfortunately it's unfunded work, and, thanks to > receiving less money than i require for living and for feeding my > family i now face a court hearing on 16th december (3 weeks time) > which has the aim and ultimate goal of making us homeless. i > therefore respectfull request that you please don't try to make me > feel like i _should_ be working on this in order to "earn your > respect" ( that goes for you too, johnathon ). I don't mean to discourage you. But as Jonathan points out this list is much better suited for submitting patches and discussing technical details. I'd be happy to review your patches, I'm very interested in getting something like this myself. If you've been working on something I'd love to see it. And I hope you'll do all-right in your personal life. >> I'm also not convinced that this is actually needed. It's trivial to >> set up a p2p-like network by just emulating a darknet by manually >> adding remotes & fetching/pushing. > > ah.. but that's the single-use case for a single shared repository. > git "as-is" the fetch/push over http is limited to a single > repository. i'm thinking more in terms of a global network, with > searches for checksummed objects "accidentally" potentially coming > from wildly different repositories. Right, but is there an actual use case for people who are developing code to use something like git over p2p? Maybe I'm just being unimaginative, but I can't see a case where people are working on the same project and can't find a way to push/pull from each other using the existing methods. Especially since it's easy to sign up for free Git hosting and use something like Tor to pull/push from there. Or to set up your own git HTTP server on a Tor *.onion server. But of course using the Git data format for non-source-code would be very interesting, and much better for something like git-p2p. Anyway, sorry about the brief reply. I'm not really knowledgable about this, and didn't fully grok/read your reply (going out). ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 2010-11-27 20:19 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Ævar Arnfjörð Bjarmason @ 2010-11-29 10:12 ` Will Palmer 2010-11-29 10:35 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Nguyen Thai Ngoc Duy 2010-11-29 19:27 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 J.H. 0 siblings, 2 replies; 10+ messages in thread From: Will Palmer @ 2010-11-29 10:12 UTC (permalink / raw) To: Ævar Arnfjörð Bjarmason; +Cc: Luke Kenneth Casson Leighton, git On Sat, 2010-11-27 at 21:19 +0100, Ævar Arnfjörð Bjarmason wrote: > Right, but is there an actual use case for people who are developing > code to use something like git over p2p? Maybe I'm just being > unimaginative, but I can't see a case where people are working on the > same project and can't find a way to push/pull from each other using > the existing methods. Especially since it's easy to sign up for free > Git hosting and use something like Tor to pull/push from there. Or to > set up your own git HTTP server on a Tor *.onion server. To me, the use-case wouldn't be because I /can't/ use existing methods, it's because I /don't want to/ use existing methods :) p2p tends to imply: - Resume-able downloads - Downloads from multiple sources at the same time - Transparently using an alternative source if one becomes unavailable - Load-balancing - referencing/linking based on "what it is" instead of "where it is" The reason this stuff isn't a big itch for anybody is that these problems tend to come about when cloning, which doesn't really happen that often. When there's a new release, fetching the latest release-tag /might/ bring about the same needs, though in my experience "there's a new release" generally means nothing to me, since I check if there's a new release by running "git remote update" and looking for new tags, merging with my local patches if I see a relevant one. I'm not convinced that any of this is something which is git's job, so much as it sounds like something which could benefit from another transport layer that git can optionally tie into. Sure, these could be developed together (p2p with git in mind), but adding a giant p2p section to the git codebase sounds like bloat. I want my version control software to use p2p concepts for efficiency. I don't want my version control software to be a p2p client any more than I want my text-editor to be a mail client. (In case it's not clear, I am in favour of p2p ("gittorrent")-like functionality being in git) ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 2010-11-29 10:12 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Will Palmer @ 2010-11-29 10:35 ` Nguyen Thai Ngoc Duy 2010-11-29 19:27 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 J.H. 1 sibling, 0 replies; 10+ messages in thread From: Nguyen Thai Ngoc Duy @ 2010-11-29 10:35 UTC (permalink / raw) To: Will Palmer, Ævar Arnfjörð Cc: Luke Kenneth Casson Leighton, git On Mon, Nov 29, 2010 at 5:12 PM, Will Palmer <wmpalmer@gmail.com> wrote: > On Sat, 2010-11-27 at 21:19 +0100, Ævar Arnfjörð Bjarmason wrote: >> Right, but is there an actual use case for people who are developing >> code to use something like git over p2p? Maybe I'm just being >> unimaginative, but I can't see a case where people are working on the >> same project and can't find a way to push/pull from each other using >> the existing methods. Especially since it's easy to sign up for free >> Git hosting and use something like Tor to pull/push from there. Or to >> set up your own git HTTP server on a Tor *.onion server. > > To me, the use-case wouldn't be because I /can't/ use existing methods, > it's because I /don't want to/ use existing methods :) > p2p tends to imply: > .. > - Downloads from multiple sources at the same time I would add "automatically" and it's a real case for me. I work on the same project on different machines (each of them has different resources that I need from time to time). So I clone to all the machines. If I make a fix in one machine, other machines should automatically fetch it. It's like a private p2p network with a single user. If I add another machine to the network, all nodes should be aware of it, without me doing "git remote add" on each node. -- Duy ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 2010-11-29 10:12 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Will Palmer 2010-11-29 10:35 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Nguyen Thai Ngoc Duy @ 2010-11-29 19:27 ` J.H. 2010-11-30 9:43 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Will Palmer 1 sibling, 1 reply; 10+ messages in thread From: J.H. @ 2010-11-29 19:27 UTC (permalink / raw) To: Will Palmer Cc: Ævar Arnfjörð Bjarmason, Luke Kenneth Casson Leighton, git > I want my version control software to use p2p concepts for efficiency. I > don't want my version control software to be a p2p client any more than > I want my text-editor to be a mail client. Keep in mind that adding p2p concepts to something doesn't make it more efficient, in fact in most cases it makes it dramatically *LESS* efficient. git-torrent like concepts have come up in the past, and I keep pointing out how and why they likely won't be useful. The biggest reason: there is no advantage for a client to stay in the cloud once they have their data. You can force this, sure, but clones are seldom and rare to begin with (as you mentioned) so there won't be a very large cloud to pull from to start with. With that in mind, I really see no advantage to p2p inside of the git core at all. It adds a lot of complexity for little gain. Now you do mention things that would be useful: - Ability to resume a clone that you only have a partial download for (maybe just pack files?) - Ability to include something like a 'meta-link' like list of repositories to check for data (inferred from the multiple download locations) There are things we can learn from p2p, but I don't think adding it to git is actually useful. Just my $0.02 though. - John 'Warthog9' Hawley ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 2010-11-29 19:27 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 J.H. @ 2010-11-30 9:43 ` Will Palmer 2010-11-30 10:08 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Jan Krüger 0 siblings, 1 reply; 10+ messages in thread From: Will Palmer @ 2010-11-30 9:43 UTC (permalink / raw) To: J.H. Cc: Ævar Arnfjörð Bjarmason, Luke Kenneth Casson Leighton, git On Mon, 2010-11-29 at 11:27 -0800, J.H. wrote: > > I want my version control software to use p2p concepts for efficiency. I > > don't want my version control software to be a p2p client any more than > > I want my text-editor to be a mail client. > > Keep in mind that adding p2p concepts to something doesn't make it more > efficient, in fact in most cases it makes it dramatically *LESS* efficient. As a simple use-case: Everyone comes into an office in the morning and runs "git remote update". This potentially causes a lot of traffic between the office and their offsite central repository. If this were a p2p scenario, the transfer from the offsite could potentially happen only once. That counts as "more efficient", to me. > > git-torrent like concepts have come up in the past, and I keep pointing > out how and why they likely won't be useful. The biggest reason: there > is no advantage for a client to stay in the cloud once they have their > data. This is true of bittorrent as well: People stay in the cloud for altruistic reasons. You're thinking p2p in terms of "every peer serves data, and keeps serving data. The network is more robust over time". I'm thinking p2p in terms of "Every peer has the ability to serve data. Adding a server is as trivial as adding a client." The greatest advantage I can think of is "no existing server needs to agree to the addition of a new server", or at least "the addition of an existing server is accepted by convention, no questions asked" > ..... You can force this, sure, but clones are seldom and rare to begin > with (as you mentioned) so there won't be a very large cloud to pull > from to start with. With that in mind, I really see no advantage to p2p > inside of the git core at all. It adds a lot of complexity for little gain. I agree that git itself is not a good place to explore p2p concepts. I assume it would be much more useful to develop an independent p2p layer and allow git to somehow use that. And while there won't be "a large cloud", it's almost a guarantee that there would be more than the /one/ server currently available during clones or long fetches. > Now you do mention things that would be useful: > > - Ability to resume a clone that you only have a partial download for > (maybe just pack files?) > - Ability to include something like a 'meta-link' like list of > repositories to check for data (inferred from the multiple download > locations) > > There are things we can learn from p2p, but I don't think adding it to > git is actually useful. > > Just my $0.02 though. > > - John 'Warthog9' Hawley > The biggest hurdle, I assume, would be "get git to talk to more than one source of data at once", even if one needs to set those up manually. If I understand correctly, packfiles are generated in a way which would not necessarily be consistent between clones. ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 2010-11-30 9:43 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Will Palmer @ 2010-11-30 10:08 ` Jan Krüger 0 siblings, 0 replies; 10+ messages in thread From: Jan Krüger @ 2010-11-30 10:08 UTC (permalink / raw) To: Will Palmer Cc: J.H., Ævar Arnfjörð Bjarmason, Luke Kenneth Casson Leighton, git --- Will Palmer <wmpalmer@gmail.com> wrote: > As a simple use-case: > Everyone comes into an office in the morning and runs "git remote > update". This potentially causes a lot of traffic between the office > and their offsite central repository. If this were a p2p scenario, the > transfer from the offsite could potentially happen only once. The same savings can be achieved by: - Hosting the repository locally in the office; - Automatically updating the 'official' location whenever something is pushed to the local repository; - Having all developers use the office repository as their remote. Takes about five minutes to set up. (That does not invalidate your overall arguments, of course, but I don't have time to address them in much detail.) -Jan ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2010-11-30 10:08 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2010-11-27 17:33 http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Luke Kenneth Casson Leighton 2010-11-27 18:36 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Ævar Arnfjörð Bjarmason 2010-11-27 19:06 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Luke Kenneth Casson Leighton 2010-11-27 19:28 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Jonathan Nieder 2010-11-27 20:19 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Ævar Arnfjörð Bjarmason 2010-11-29 10:12 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Will Palmer 2010-11-29 10:35 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Nguyen Thai Ngoc Duy 2010-11-29 19:27 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 J.H. 2010-11-30 9:43 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Will Palmer 2010-11-30 10:08 ` http://tech.slashdot.org/comments.pl?sid=1885890&cid=34358134 Jan Krüger
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).