Basically a branch is a way to work on two things in parallel, without stepping on each other's toes, but with an 'easy' way to reconcile the two end products back into a single version. So if you and I need to work on the same code, I can launch a branch from our starting point while you work on the trunk (main branch). When I'm done, I can merge my changes into the trunk, often with no manual intervention.
As I see it, there are two main uses for branches: 1) releases. When you do a release of your software and need to fix a bug, you'd launch a branch of the exact release code, and fix the bug there. That way any subsequent mods you've made on the trunk don't get in the way when you're making your patch for the bug, but it's still easy to merge the bugfix into your trunk so it's there for the next release 2) concurrent development. When you've got two things that need to be done, and both of them need to happen in isolation (because working on them at the same time will be problematic, or one of them is experimental and might not actually be used, or whatever), a branch is perfect. You launch a branch, do you stuff, and if/when it comes time to integrate back into the trunk, it's easy to do. Where I work, we maintain the trunk, and a 'staging' branch, which is current production codebase. We split off branches from the trunk as needed (for scenario 2), and all dev work that happens to the staging branch is done in subbranches, thereby ensuring that the actual staging branch is always an exact mirror of production. I'd highly recommend the SVN book (http://svnbook.red-bean.com), as it's got some good foundation knowledge about SVN, as well as some good examples. cheers, barneyb On 10/26/05, jonese <[EMAIL PROTECTED]> wrote: > Hey all, > > We recently moved from VSS to SVN (please quit with the applause) and while > we are "using it" we aren't taking full advantage of it. Ie branching, > merging etc. Right now it's just a update, commit thing for us to keep our > code sync'd between developers. > > I'm looking to see if anyone out there has a best practices guide, or better > yet can share your corporate policy on how source control is to be used in > your office. We are a small development shop (4 developers full time) and we > work on multiple sites at once. I'm not sure if the who merging and > branching is really for us but i'd like to see how other development shops > are doing it, so we can get an idea of what we might be missing. > > feel free to post public or private. > TIA > jonese > -- Barney Boisvert [EMAIL PROTECTED] 360.319.6145 http://www.barneyb.com/ Got Gmail? I have 100 invites. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Logware (www.logware.us): a new and convenient web-based time tracking application. Start tracking and documenting hours spent on a project or with a client with Logware today. Try it for free with a 15 day trial account. http://www.houseoffusion.com/banners/view.cfm?bannerid=67 Message: http://www.houseoffusion.com/lists.cfm/link=i:4:222365 Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4 Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4 Unsubscribe: http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4 Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

