SVN Plugin
Once this plugin is configured for the project, tinyPM polls svn repository for changes and displays commit information in tinyPM history. When your commit message contains a tag e.g. #423 where number is a valid user story id, then it is linked with the story.
Requirements
SVN command line client must be installed on the machine that runs tinyPM.
Configuration
- Open the Projects menu, find your project and click settings icon

- Select History plugins and enter SVN connection parameters (see table below)
- Add the configuration and Save your changes
| Configuration parameter |
Description |
| Remote system URL |
URL to the SVN repository Examples: svn://host/repo svn+ssh://host/repo file://repo See Connection styles
|
| User name |
username for authentication in SVN, leave blank for anonymous connection |
| Password |
password for authentication in SVN, leave blank for anonymous or SSH connection |
| timeout |
(in seconds) the maximum time for a connection to the SVN, the default setting is 25s |
| configDir |
(advanced) instructs SVN to read configuration information from the specified directory instead of the default location (.subversion in the user's home directory) |

How to bind commits with user stories in tinyPM?
If you want the commit message and a list of changed files to appear next to some user story, then all you need to do is to include that story id (i.e. #123) in the commit messages, like:
fixed a nasty bug that affected payment process (story #123)
Troubleshooting
While configuring the plugin you can get an exception:
Caused by: com.agilers.tpm.plugin.svn.CommandLineException: Failed to execute command: FATAL ERROR: Network error: Connection timed out
svn: To better debug SSH connection problems, remove the -q option from 'ssh' in the [tunnels] section of your Subversion configuration file.
svn: Network connection closed unexpectedly
Command: svn log --non-interactive -v svn+ssh://alice@192.168.0.222/EShop --xml --limit 100 --username alice
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
The exception contains the command that failed, you can run it in the terminal and quickly locate connection problem.
Connection styles
| Connection style |
URL |
Parameters |
Details |
| SVNServe |
svn://... |
user name, password (not required for anonymous repo) |
|
| SVNServe via SSH |
svn+ssh://... |
user name, privatekey.ppk the file with private key for SSH connection |
You must be able to login to the server using SSH with private key (interactive login with password is not supported) |
| SVNServe via Apache |
http(s)://... |
user name, password (not required for anonymous repo) |
|
| local |
file://... |
user name, password (not required for anonymous repo) |
SVN installed on the same machine that runs tinyPM |
If you have problems on Windows
If you need to access a repository by SSH (repository URL starts with svn+ssh://...) and your tinyPM is installed on Windows:
- Download plink.exe from http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
- Check if it works with your private key, in console run:
plink -i C:\privatekey.ppk user@host
- Edit the SVN config
C:\Users\<user>\AppData\Roaming\Subversion\config
or
C:\Documents and Settings\<user>\Application Data\Subversion\config
Find [tunnels] section and add # before ssh command (uncomment it):
#ssh = $SVN_SSH ssh -o ControlMaster=no
Below add your command:
ssh=C:/plink.exe -i C:/privatekey.ppk
- Configure SVN plugin in tinyPM

If this documentation doesn't solve your problem or has left you with any questions, please don't hesitate to contact us at
support@tinypm.com