Our team is currently using plain old TFS 2005, no branching, shared checkouts etc... I would like to introduce a DEV/MAIN/PROD branching system similar to the basic flavor in the TFS Guidance document so that we can do some parallel dev, isolation, and firm up review and deployment processes.
I have read most of the whitepapers etc. Do you guys have any practical advice, suggested tools, gotchas or recommendation. Also, we plan to migrate to 2010 once it comes out - not sure if that would affect anything. I appreciate all the suggestions and help I can get as I am a branching neophyte.
With TFS, there are several ways that you can handle releases. You can tag/label each release branch or bug fix. But the relationship between release branches and the release is not always clear. Teams need to create a naming scheme and define a TFS branching strategy to help document the flow of change.
Right-click on the FAST Search folder and select Branching and Merging -> Branch from the context menu. Once you clicked on Branch it will open a prompt window and set the Target location and leave the defaults.
My advise would be to keep your branching strategies simple. It's easy to get carried away and implement rather sophisticated branching strategies that require a whole team just to manage them.
I tend to go by with just a "main branch" and one (or many) "release branches". The main branch is where day to day development happens and the release branch is used to take a snapshot of the code before is pushed to production.
The main branch continues changing as the project evolves over time while the release branch is a way to go back to make a change to what's in production without risking including other on-going changes on the main branch. The release branch is used to make hot-fixes.
I've described this in more detail on my blog:
http://hectorcorrea.com/Blog/Simple-Branching-Strategies-for-Team-Foundation-Server
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With