I sometimes use GUI's on my development workstation. For Linux, the best I've found so far is a very old one named pysvn-workbench, which is sufficient for my needs. However, some of the documentation is lacking.
The configuration for pysvn-workbench is in ~/.WorkBench/WorkBench.xml. It contains some global preferences, then a list of all projects with their configurations. When preferences are changed, the file is renamed with a .old suffix, then recreated.
In that directory is also a log file for actions (WorkBench.log) and the most recently used log message (log_message.txt).
The WorkBench.log file appears to be rotated every 100k, ie it will rename the old log file to WorkBench.log.1, then start a new one.
Templates sound like a great idea, but figuring out how to set them up is pretty much undocumented. I finally started looking at the source and found the following:
Note I have not been able to figure out a way to set one template folder for all projects. You have to set the template folder for each one.
As of Subversion 1.6, from a working copy, you can use the caret (^) as a substitute for the root URL of the project. Thus, if your you are in your working copy someplace, the following are equivilent. Note that even if you only checked out trunk, the tags are still accessible since it is the URL that is substituted for the caret. This can greatly reduce typing.
svn copy http://svn.example.com/project/trunk http://svn.example.com/project/tags/1.0 -m "Release 1.0"
cd /path/to/project svn copy ^/trunk ^/tags/1.0 -m "Release 1.0"
I've always been intrigued with people who use subversion with a tag that always points to the most recent stable version. Never figured out how they do it, but thanks to one of my associates, came up with this simple action when a new version has become your most recent stable version</.
svn ls -v ^/tags svn delete http://svn.example.com/project/tags/stable -m "Changing latest stable version" svn copy http://svn.example.com/project/tags/v1.0 http://svn.example.com/project/tags/stable -m "Making v1.0 the most recent stable copy"
Unfortunately, I did not record the exact steps when I did this the last time, so this is pretty bogus. However, I'll be doing it again in the near future and will update this then. Do Not blindly follow this. It is some notes for me so I'll try to remember the next time I have to do it.