> From: [EMAIL PROTECTED] > begin quoting Gabriel Sechan as of Sun, Jun 15, 2008 at 09:06:29PM -0500: >> As an example- I had to get a codebase to work on a new compiler. As it tur >> ned >> out, this ended up with multiple small edits to almost every file. I couldn' >> t c >> heck it in midstream, because it was broken on all platforms at that time. I > > And you didn't use a refactoring tool or unit tests, I'm guessing.
Read the example again- I wasn't refactoring, I was bringing up software on a new platform. That isn't refactoring, thats extensive changes. Although I've never used a refactoring tool, I don't see anything they can do for me I can't do with emacs and shell commands. Our unit tests are admittedly weak, but it wouldn't have mattered- I had no time to run them. I had 1 week to make it work enough so a 3rd party partner could run the basic software. Special case, but here breaking other builds on my laptop was acceptable and missing the deadline wasn't. And the quicker I did it, the more time I had to help them get a leg up, explain APIs they needed to implement, fix platform specific bugs, etc. Had I worried about other platforms that week it wouldn't have gotten done, but dropping other platforms got it finished by Wednesday. > >> In my experience, I'd say about 95% of all branches are due to people impleme >> nti >> ng large features on their own branch, then integrating at the end. > > This is where branching seems the least useful, and where the criticism > lies. > > Branch for releases. Branch for code forks. Branch for spike solutions > (although a DVCS seems better for this). > > Branch to develop new features in isolation? Bleah. > Depends on how big the feature is, how many other people are developing on the same part of the code, and whether its feasible to do check-ins midstream. Short changes is stupid, but if you have something on the order of weeks->months and it would likely interact poorly with other changes being made, it makes sense to branch then merge. Although yes, the integration can become painful, it can also be less painful than multiple integration issues throughout the project life. Gabe -- [email protected] http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-list
