User: Password:
Subscribe / Log in / New account

Mercurial: an alternative to git

Mercurial: an alternative to git

Posted Sep 15, 2005 2:39 UTC (Thu) by dlang (subscriber, #313)
Parent article: Mercurial: an alternative to git

Matt's posts about the bandwidth comparisons prompted the git team to develop the pack object. from what I have seen about it's internals I wouldn't be surprised if the git pack object ends up being smaller then Mercurial in many cases (and is very close in the other cases)

the pack object also goes a long way to address the seek problem that's described.

this should be looked at more closely if either of these factors are significant to you.

(Log in to post comments)

Mercurial: an alternative to git

Posted Sep 15, 2005 14:43 UTC (Thu) by bos (guest, #6154) [Link]

Caveat lector: I work on Mercurial a lot.

Yes, git pack objects are often smaller than Mercurial's storage uses.

The reason is that, as I recall, git packs data for multiple files into a single pack object, which Mercurial does not do.

I believe, from hearsay, that Mercurial's approach has some practical advantages over git's pack files, but as I don't know enough about how git works in this specific area, I won't bother trying to make stuff up :-)

Mercurial: an alternative to git

Posted Sep 15, 2005 21:53 UTC (Thu) by dlang (subscriber, #313) [Link]

yes git packs multiple files into one object.

it's hard to say which is better, each has their advantage

the git method keeps everything in the pack self-contained so that you don't have to worry about the file becomeing worthless becouse the file it is a diff of gets removed.

while the Mercurial method does everything transparently so the user doesn't have to do anything about it.

the git network interface supports effectivly createing a custom pack file for the user and then downloading it, which is better for network bandwidth, at the cost of a little more CPU on the server.

one thing that hasn't been done with git yet (but is being looked at) is the possibility of a pack to include 'unrelated' things. An example of this would be to have pack files that span distros (bash is very close to being the same on all distros for example), which for large archives could have some interesting implications.

Caveat lector: I've been reading the git list since it started, what I know of mercurial is what's been posted there.

Mercurial: an alternative to git

Posted Sep 16, 2005 2:56 UTC (Fri) by bos (guest, #6154) [Link]

Mercurial supports the equivalent of custom pack files, called bundles.

Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds