Re: [jokosher-devel] bzr?



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.

cheers,

David


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]