Best way to prevent changes on a branch with Subversion


The way we use Subversion is to work on the trunk, feature branches for significant features (> 1 days work) and release branches.

We delete feature branches once they are happily merged but we want to keep release branches around in case they are needed for bug fixes and so on.

Each of us checks out the root of the project as a minimum so we all have a copy of whole directory structure (trunk, branches, releases). As much as I can educate people to check they are working against the trunk, they could end up working against a release branch by accident.

What is the best way to prevent this from happening? I'm thinking of locking all the files in the release branch, would this help? What other options are there?

Best Solution

Why is everyone having the whole SVN hierarchy checked out? It would be much less error prone if everyone has only checked out the trunk/branches they're working on. You cannot check something in a branch you haven't checked out.

I can second the practice to tag a release as mentioned by Razzie.