floater
Java Jedi
总版主
发贴: 3233
积分: 421
|
于 2006-03-26 11:58
I am not aware of. If the conflicts happen more often, we should think about the code entangling at the design level(facing code and facing requirement sides), need to seperate responsibilities further. In my exp, it usually happens a couple of times a year.
Another entirely different approach is branch-and-die, i.e., never merge back from official/release versions. Usually, this is for highly incompatible versions.
I've worked in different companies with different version control stategies, merge vs die, or layout on top of the head of branch. It works, but not perfect.
I think/believe the ultimate solution is to have a change control system on top of version controls, such as clear quest/sablime/testtrack, etc. So you can have a precise image of the source code base(branch/head are just particular examples of a snapshot of the base) because we have to controls over the changes(via change requests, or CRs in short).
A CR system normally handles conflict better than at the SCCS level because it brings in all related parties together. It doesn't eliminate the conflicts, but with all related parties, it should be handled gracefully. Of course, the price to pay is the extra system.
my two cents
"Any fool can write code that a computer can understand. Good programmers write code that humans can understand." - Martin Fowler, Refactoring - Improving the Design of Existing Code
|