A Curious Mind
#tastic

Better SCM Practices

Saturday, December 02, 2006 1:58 AM

So after sitting through some Team System presentations this week, I finally decided that it was time to understand how to do branching and merging with my source control tool. I have always known that this is something I should be doing but I just couldn't bring myself to understand it. Well, my project is starting to grow to a size where I really can't keep it all in my head, and it seems lately that I have been getting bitten by the bugs a little to often so here I am.

So far I have built a toy project that has the following three folders:

Development (the root or trunk)

Testing (a branch of Development)

Production (a branch of Testing)

Code is changed in Development and merged into Testing. If it passes with no change requests, Testing is merged into Production.

If a bug is found in Testing, then we check out the revision used to make the testing branch, and fix the bug. These changes are then merged into both the Testing and Development branches. I am still figuring out how to do this one. It may require some command line goodness to pull off. (Hope I got this part right)

Anyways, hope you're all using some kind of source control.

Links

Source Control HOWTO

Wikipedia Entry

Source Control Apps

SVN

Vault

Team Foundation Source Control

darcs

many, many, more...


Feedback

# re: Better SCM Practices

What you describe looks like different names for the SVN best practices.

Trunk - development
Branches/1.0 - testing
Tags/1.0 - production

Take into account that you need more than once production/testing braches, since you'll want to have different dev/prod version as time goes by. 12/2/2006 7:58 AM | Ayende Rahien

Post a comment





 

Please add 7 and 4 and type the answer here: