Software Development Process Insights
.
Many source control systems offer a feature called "branching". It is actually a good idea to use this feature
, because it allows you to have fine-grained source control for teams, workgroups and features. It is interesting to see that despite the obvious advantages of branching it is only seldomly used.
I am Product Manager for Collaboration and Digital Asset Management at
Actually it is a very bad idea to use this feature unless you're working on a project like Windows. How many of you work on something so big?
If you're able to build the whole project in few hours (with integration tests) it's senseless to use this feature - the best idea is to integrate as fast as possible (check Joel's site, I think he wrote about it some time ago) and test.
Also not using branching promotes introducing changes throught iterations - you do small change, commit, then work on another part and commit again until you have it all introduced to your project. It's better solution than to fork and work on something for weeks and then try to merge.
In my opinion branching is only useful for maitenance and in some rare cases.
Posted by new on November 30, 2006 at 10:49 PM CET #
Branching is another promoter of change as it allows you to develop your improvements in your own branch without having to worry about temporary instability all the time.
The integration points are the place to measure quality and this is where integration tests and CI come into play.
Posted by Lars Trieloff on December 03, 2006 at 12:03 PM CET #