Laszlo Pandy wrote:
> Personally I think Bazaar is the best client, but SVN is the best 
> server. The SVN server is most mature, etc, and the only thing it 
> doesn't do well is renaming. Bazaar has a lot of cool distributed 
> features, but since we need one 'official' branch that we release from, 
> it has to be centralized, so Bazaar or SVN doesn't really matter.

I think it is a mistake to see branch as worthless because you want to 
release from one branch. IMHO, that's the biggest mistake you could do, 
actually, when considering a DVCS. DVCS are not about having many equal 
branches; it is about removing the *technical* barriers to branch, to 
change branches, etc... SVN itself suggests a scheme to have one branch 
per release BTW. For linux, most people take code from linux branch.

The biggest problem with subversion is that it does not do branching 
correctly: sure, you can do it, but nobody really does, because it is 
extremely error prone (no merge tracking, etc... svnmerge is far from 
enough to circumvent this). bzr (and all other DVCS) do merge correctly, 
because a DVCS requires a merge system which is convenient. It is not 
that DVCS are inherently better at merging: it is just that nobody would 
use a DVCS if merging was as bad as in svn.

With a DVCS, you can have many branches, some more important than 
others: I use bzr for all my projects, and most of the time, I am the 
only one contributing to them, but I still use branches all the time. Why ?
    - with 'feature' branches, it is easy to navigate within one branch 
to see the work on one feature without being annoyed by other people commits
    - with bug branch, you can easily test whether the fix is working or not
    - with release branch, you can manage release much more easily.

Once you are used to this kind of workflow, it is extremely difficult to 
go back to svn.


jokosher-devel-list mailing list

Reply via email to