Is there a better way to implement code freeze in SVN than asking all developers to not check in any new code?
We have CruiseControl running, which automatically deploys the latest build to environment. So if new code comes in, the build that was made available earlier changes to the latest one. I want that the build that is deployed is the one from a particular branch/tag, so that any new code check-ins dont affect the deployed build. Only when i tag/branch next time, the new code should be again deployed.
How can we achieve this?
Use SVN's built in branching functionality. The following link shows you all the details on how to branch (you can also use tags if you prefer): http://svnbook.red-bean.com/en/1.1/ch04.html
The subversion convention for doing what you are talking about is creating a tag. Of course, a tag is no different than a branch in that it is just a copy of a certain development line at a certain revision (typically... there are complex tags). However, the subversion best practice is that tags are created once and are NEVER committed to - they are snapshots only.
So my advice would be to tag your build at the revision you want to freeze at, communicate to all of your developers that no commits are to be made to that tag (if they do not know it already), and build from that tag for your releases. Raise holy hell if someone commits to a tag.
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