While programming software stored in a Subversion repo, I often modify some files, then notice that I\'d like to do some preparatory change for my main work. E.g. while impl
Since Subversion doesn't support stash feature perfectly,
I just do manual way like this.
Place Development and Production(release) project to a separated path.
source\code\MyApp -- Development
release\MyApp(release) -- Production(release)
You can work any new features for your project in the development path,
and you would only commit meaningful progress or something should be released for the stable.
When you have to release it for production, open production project, update svn and do stuff to release(build, export... etc).
I know this makes little bit troublesome, but releasing progress doesn't happen often(it doesn't for me, but I know some projects do) compare to develop progress, this way fits for me.
I'm using svn for specific projects since the project team members use it, so I have to follow.
The best solution is to use git which has a perfect version control system and better than svn.