Comparision of Git & Bzr [was Re: Short HOWTO on using git for Samba development]

Gerald (Jerry) Carter jerry at samba.org
Tue Jun 26 14:27:07 GMT 2007


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Jelmer Vernooij wrote:

> On Mon, Jun 25, 2007 at 04:25:10PM -0500, Gerald (Jerry) Carter wrote:
>>
>> Other than tracking renames, what else do you mean by
>> "correctness".  I haven't followed all the DSCM bake-offs
>> and debates.
>
> I think the Bazaar model is a bit easier to understand 
> than the git one,  especially for people coming from (for
> example) Subversion. The UI is also much nicer. For example,
> there's no need to worry about sha1s as a regular user
> and the commands make a little bit more sense. It's usable
> easily in a centralized fashion.

Agreed, but I can live with this.

> Git's data format and representation are intermixed - 
> there's no way of upgrading the repository format without
> changing the revision ids, as they are checksums tied to
> the format. Bazaar has infrastructure for upgrading to
> newer formats and thus can support things like nested trees
> in the future without breaking everybody's existing branches.

Hmmm...I'll have to think about this.  It's a good point.

> Git is really fast and efficient at what it is supposed 
> to do: merge between and store snapshots of code on POSIX systems.
> It does not aim to do more than that; for example, win32 will
> be tricky to get fast because it relies on platform-specific
> features and its heavy integration with the current
> data format means it's hard to add new features such as
> nested trees. Bazaar is trying to be more generic.

I mentioned this before but I'm curious, do people
consider win32 support a requirement for our SCM?

>> The things I like about git are:
> 
>> * git-svnimport and git-svn (for now)
>> * fast-forwards and rebasing branches
>
> I've never really understood what's so nice about 
> fast-forwards or rebasing. What's so useful about it?

Maybe this is just a nice thing currently working with
git-svn but rebasing keeps the hist in the svn tree linear
and conceptually only maintaining a branch point where it
really matters.

>> Questions about bzr are
> 
>> * Will svn2bzr.py actually work on the Samba sv repo now ?
> Not sure about svn2bzr.py, but svn-import (similar command from
> bzr-svn) does.

Cool.

>> * What would the resulting size be?
> 
> I think it was about half the size of the Samba Subversion 
> repository last time I tried it.  Obviously, it would be a
> lot less when lazy repositories would be supported.

Really ?  Does the revision sharing in a repository gain
you that much? My SAMBA_4_0.bzr diff/patch mirror from svn is
312MB alone.  And the entire Samba svn repo is only about
550MB.

>> * What is the status of bzr repositories and cheap 
>>   branching?
> 
> It's high on the list for the summer. Most of the current 
> focus is on performance.
> 
> "bzr switch" changes the branch that is used by the 
> current working tree, much in the way you can do so with git.
> It doesn't change directory or anything.

Help me to understand something about repositories.  The way
I read things, "bzr init-repo" just gives me a way of sharing
revision history between branches but does not provide a way
to do the equivalent of "git-clone" where I get the entire
repo and branches.  I can only "bzr clone" a single branch
at a time.

So a repo is a nice for a single developer or a shared
repository where people do checkouts, but not as a means of
publicaly sharing branches in a project.

Am I right?






cheers, jerry
=====================================================================
Samba                                    ------- http://www.samba.org
Centeris                         -----------  http://www.centeris.com
"What man is a man who does not make the world better?"      --Balian

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQFGgSI7IR7qMdg1EfYRAoUkAJ9e/fCjEypBvk/XDgXgu68x116/+QCgrbB8
82P5BV6mKdYDOzZqM/4gdaM=
=O5id
-----END PGP SIGNATURE-----


More information about the samba-technical mailing list