On Fri, August 17, 2007 12:30 pm, Stewart Stremler wrote: > begin quoting Lan Barnes as of Fri, Aug 17, 2007 at 07:34:43AM -0700: >> >> On Thu, August 16, 2007 9:30 pm, Stewart Stremler wrote: >> > begin quoting Andrew Lentvorski as of Thu, Aug 16, 2007 at 06:25:20PM >> >> Stewart Stremler wrote: >> >> >Get a good three-way merge program. >> >> >> >> Or use git, mercurial, darcs, perforce, etc. rather than subversion. >> > >> > Merging still sucks. >> >> Merging can be minimised, suck-wise, by having developers understand the >> tofu rule, keep branches short, only branch when necessary, etc. > > Well-trained developers and limited tasks can get rid of a lot of > suckages; but even then, circumstances can make any sort of merging > painful. > > If you give me well-trained developers that can be trusted to understand > some concept, and the administrative support needed to keep branches > short / branch when necessary... > > I'd probably do away with branches altogether. > > I'd train the developers in refactoring first. Small changes that don't > change observable behavior can be made to the common tree. No need to > branch the source to rewrite a module... rewrite it in place, using > refactoring techniques. > > Next I'd use the administrative support to at least acquire or configure > a side-by-side two-way merge system (and train the developers on it), or > use a version control system that provides a three-way-merge tool. > >
I completely agree with you. Philosophically, I advocate developing on the trunk and branching ONLY when two code lines MUST be kept separate, at least for a time. That said, one must branch sometimes. And the lack of true branching is part of svn's problem. Copies are not branches (nor are they tags/labels -- they are at best snapshots). -- Lan Barnes SCM Analyst Linux Guy Tcl/Tk Enthusiast Biodiesel Brewer -- [email protected] http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-list
