- Subversion Server for Windows
- The proper way to setup an Apache Subversion server
- Easy to install, configure and maintain
- Free for commercial use!
- Version 4.0
- Version 4.0.5 (April 23, 2020)
- Version 4.0.4 (September 05, 2019)
- Version 4.0.3 (July 31, 2019)
- Version 4.0.2 (June 26, 2019)
- Version 4.0.1 (June 06, 2019)
- Version 4.0.0 (May 13, 2019) [Release Notes]
- Getting Started
- Installing VisualSVN Server
- Accept the License Agreement
- Select Components
- Adjust initial server configuration
- Configure the SSL/TLS certificate
- Select the authentication mode
- Start 45-days evaluation or enter the Enterprise license key
- Finish the installation
- Performing Initial Configuration
- Configuring Network Settings
- Configuring User Authentication Settings
- Configuring SSL Certificate
- Adding Repositories
- Importing Existing Repositories
- Creating New Repositories
- Configuring User Permissions
- Configuring antivirus exclusions
- Final Check-Up
- Subversion Client Test Drive
- Repository Web Interface Test Drive
- Performing Advanced Configuration
- Schedule Repository Verification
- Schedule Repository Backup
- Enable commit email notifications
- Enable Access and Operational Logging
- Enable Repository Management Delegation
- Enable Multisite Repository Replication
- Enable Remote Server Administration
Subversion Server for Windows
VisualSVN Server allows you to easily install and manage a fully-functional Subversion server on the Windows platform. Thanks to its robustness, unbeatable usability and unique enterprise-grade features, VisualSVN Server is useful both for small business and corporate users.
The key features of VisualSVN Server are:
The proper way to setup an Apache Subversion server
VisualSVN Server has reached more than 3,000,000 downloads and it’s the most favored way to setup and maintain an Apache Subversion server on the Windows platform. It is certified for Windows Server and trusted both by thousands of SMBs and Fortune 500 companies such as General Electric, Siemens, ThyssenKrupp and Sony. Learn more.
Easy to install, configure and maintain
VisualSVN Server is distributed as a single installation package with the latest versions of all the required components. The installation process is extremely simple and allows you to setup a full-featured and ready to use Subversion server in just a few clicks. Upgrades to newer versions are simple too. Learn more.
Free for commercial use!
VisualSVN Server is freely available for commercial use under the Community license. The free Community license does not require any registration, allows an unlimited number of repositories and up to 15 users. Learn about other available license types.
Version 4.0
VisualSVN Server 4.0.x version family has reached End of Support. We no longer provide maintenance and technical support for any VisualSVN Server 4.0.x builds. Read the End of Support announcement for further information.
Please, upgrade to the current version that is available on the main download page.
Version 4.0.5 (April 23, 2020)
- Updated to OpenSSL 1.1.1g with cumulative fixes for the following vulnerabilities: CVE-2019-1551, CVE-2019-1552, CVE-2019-1563, CVE-2019-1547, CVE-2019-1549.
- Updated to Apache HTTP Server 2.4.43 with fixes for the following vulnerabilities: CVE-2020-1934, CVE-2020-1927.
- Fixed: downloading folders in the web interface may crash in some highly-customized server installations.
- Updated Expat XML parser to version 2.2.9
Version 4.0.4 (September 05, 2019)
- Updated to Apache HTTP Server 2.4.41 with fixes for the following vulnerabilities: CVE-2019-10081, CVE-2019-9517, CVE-2019-10098, CVE-2019-10092, CVE-2019-10097, CVE-2019-10082.
- Fixed: VDFS service may temporarily hang under some unlikely circumstances.
Version 4.0.3 (July 31, 2019)
- Updated to Apache Subversion 1.10.6 with fixes for the following vulnerabilities: CVE-2018-11782, CVE-2019-0203. For further details please see https://svn.apache.org/repos/asf/subversion/tags/1.10.6/CHANGES
- Updated Expat XML parser to version 2.2.7 with cumulative fixes for the following vulnerabilities: CVE-2018-20843, CVE-2017-11742.
- Fixed: notification about the expired evaluation license may not be displayed in some cases.
- Fixed: maximum number of queued HTTP server connections may be smaller than anticipated on Windows Server 2016 and newer.
Version 4.0.2 (June 26, 2019)
- Fixed: Windows users with no repository access may be incorrectly counted as active after viewing the repositories list.
Version 4.0.1 (June 06, 2019)
- Updated to OpenSSL 1.1.1с with a fix for the CVE-2019-1543 vulnerability.
- Minor refinements in C/C++ syntax highlighting in the web interface.
- Minor refinements in the DOCX and PDF files preview in the web interface.
- Add missing digital signatures for libsvn_fs_fs-1.dll and libsvn_fs_util-1.dll.
Version 4.0.0 (May 13, 2019) [Release Notes]
- New licensing model: VisualSVN Server is now available under Community, Essential and Enterprise licenses.
Web interface enhancements
- New feature: Viewing MS Word DOCX files in the web interface.
- New feature: Viewing Photoshop PSD files in the web interface.
- New feature: Viewing Illustrator AI files in the web interface.
- New feature: Blame/Annotate View in the web interface.
- New feature: Download folders as zip files.
- Add linking to a specific line of code.
- Add support for viewing password-protected PDF files.
- Add self-service password changing for Subversion authentication.
- Add support for viewing ICO files.
- Revamp the Commit Details view.
- Display images with transparency on checkered background.
- Better support for printing contents from the web interface.
- Enable syntax highlighting for *.cxx, *.hpp and *.hxx files.
- Enable syntax highlighting for Kotlin files.
- Enable syntax highlighting for YAML files.
- Enable syntax highlighting for *.ps1xml, *.cdxml, *.xaml and *.xsd files.
- Detect and enable XML syntax highlighting for various files based on content.
- Display PDF in actual size instead of fitting to width.
- Add the «Report a problem» link.
- Drop support for Internet Explorer 10.
- Hardened the Content-Security-Policy.
- Various small tweaks and enhancements.
- Manage TLS/SSL server certificates via Get-SvnServerConfiguration and Set-SvnServerConfiguration cmdlets.
- Add New-SvnServerCertificateRequest cmdlet to generate a Certificate Signing Request.
- New Get-SvnServerLicense and Set-SvnServerLicense cmdlets to manage server licenses.
- New Export-SvnRepository cmdlet to export repositories and VDFS replication seeds.
- Add option for Test-SvnRepository cmdlet to perform consistency check for slave VDFS repositories.
- New Invoke-SvnJob cmdlet to run background jobs synchronously.
- Fixed: VisualSVN Server PowerShell console may display incorrect colors on Windows 10 and Windows Server 2016.
Getting Started
VisualSVN Server allows you to easily install and manage a fully-functional Subversion server on the Windows platform. The process of getting started with VisualSVN Server includes the following main steps:
- Installing VisualSVN Server
Download and launch the VisualSVN Server installer package to start the server deployment. - Performing Initial Configuration
Perform the essential tasks using VisualSVN Server Manager MMC console to make the server ready for production use. - Performing Advanced Configuration
Enable additional important features such as scheduled backup and verification, advanced logging, remote administration and multisite repository replication.
Installing VisualSVN Server
VisualSVN Server is distributed as a Windows Installer package (*.msi) file and comes with a setup wizard which will guide you through the basic steps to install the server. To begin the installation, you should download the VisualSVN Server installer package and launch it on the server computer.
Download the VisualSVN Server installer package from the main download page.
You will be presented with a setup wizard after launching the installer. The setup wizard will guide you through the following steps that are required to finish the installation.
Accept the License Agreement
Select Components
Select to install VisualSVN Server and Administration Tools components when deploying VisualSVN Server.
Adjust initial server configuration
Optionally, adjust the default configuration settings before starting the installation.
- Location. Specifies the VisualSVN Server installation directory. The option can only be configured on the first install.
- Repositories. Specifies the root directory where Subversion repositories will be stored. For better performance it is recommended to change the default location and store your repositories on a non-system volume. However, you can keep the default repositories location during the first install and change it later via the VisualSVN Server Manager console.
Configure the SSL/TLS certificate
If you kept the Use secure connection (https://) option enabled on the previous step, VisualSVN Server will require an SSL/TLS certificate in order to work over the HTTPS protocol.
- If the computer is not joined to an Active Directory domain, the installer will automatically generate a self-signed certificate.
- If the computer is joined to an Active Directory domain, the installer will present two options: either to Create a self-signed certificate, or to Obtain the certificate from Active Directory. The second option is recommended, since it allows utilizing the existing Active Directory Certificate Services (AD CS) infrastructure to receive a certificate that will be trusted by the clients from the corresponding Active Directory domain or forest.
Note that in all cases, the initial SSL/TLS certificate can be reconfigured after the installation. If you chose to create a self-signed certificate, it is recommended to replace it with a certificate signed by a trusted certificate authority. Please see KB134: Configuring SSL Certificates for VisualSVN Server for additional details.
Select the option suitable to your environment and click Next.
Select the authentication mode
VisualSVN Server allows selecting the authentication mode during the installation. Two authentication modes are available: Subversion authentication and Windows authentication (recommended for Active Directory environments). Read the article KB39: Understanding VisualSVN Server Authentication options for more information.
You can reconfigure the authentication mode later using the VisualSVN Server Manager console. Note that at the next step the installer will generate an evaluation license or request you to provide a sufficient license key if you choose Windows authentication because this feature is not available under a free Community license.
Select the required authentication mode and click Next.
Start 45-days evaluation or enter the Enterprise license key
VisualSVN Server is available under three licenses: Community (free), Essential (paid) and Enterprise (paid). The license type determines which features are available for the server. Read the article KB146: VisualSVN Server 4.0 Licensing Overview for the list of features and licensing details.
When you choose to enable Windows authentication, you need to start a 45-day evaluation or enter a sufficient Enterprise license key because the feature is only available under Enterprise license.
Select a suitable option, provide the license key if needed and click Next.
Finish the installation
On the last screen of the setup wizard, make sure that the Start VisualSVN Server Manager option is selected. Click Finish to close the installer and proceed to the server configuration steps with VisualSVN Server Manager console.
VisualSVN Server Manager will launch as soon as the installation is complete. VisualSVN Server Manager is the main tool to control the server. The console provides an intuitive graphical interface for server and repository administration.
Performing Initial Configuration
After finishing the VisualSVN Server installation, you need to perform initial server configuration and tailor the new server deployment to your environment before the server goes live. The initial configuration process consists of the following steps:
Configuring Network Settings
VisualSVN Server provides several configurable network settings that you should review after the installation and adjust if required.
Follow these steps to open up the network settings:
- Start VisualSVN Server Manager console.
- Click Action | Properties.
- Click Network tab.
- Server name. By default, VisualSVN Server takes the local server hostname as the server name. If you plan to access VisualSVN Server and the repositories using another DNS name, you should manually adjust the setting to include this DNS name.
- Automatically redirect HTTP to HTTPS (listen on port 80). VisualSVN Server can help you transparently switch from plain HTTP to secure HTTPS protocol without any disruption for users. Consider enabling this setting if you plan to switch access to the repositories from HTTP to HTTPS.
- Repositories URL. All the repositories hosted on VisualSVN Server are nested under single repository root in the URL. By default, the root URL prefix is svn/. You can adjust the root URL prefix if required.
- Server Binding. VisualSVN Server binds to all available IP interfaces, by default. You can bind VisualSVN Server to specific network interface if required.
Configuring User Authentication Settings
It is recommended to review user authentication settings before starting to add the Subversion repositories to a newly installed VisualSVN Server instance.
Follow these steps to open up the authentication settings:
- Start VisualSVN Server Manager console.
- Click Action | Properties.
- Click Authentication tab.
VisualSVN Server supports two distinct authentication schemas:
- Subversion authentication is suitable for non-domain VisualSVN Server installations with a few number of users. It relies on the internal user list maintained by VisualSVN Server and supports Basic Authentication only.
- Windows authentication is suitable for VisualSVN Server installations in Active Directory. It relies on Active Directory user credentials and supports Basic Authentication and Integrated Windows Authentication (Active Directory Single Sign-On).
Configuring SSL Certificate
In order to provide end-users with access to repositories using the secure HTTPS protocol, VisualSVN Server must be equipped with a valid SSL certificate.
If you didn’t change the defaults during the installation, your server should be already working over the HTTPS protocol, with a preconfigured SSL certificate for the hostname of the server computer where VisualSVN Server is installed. Depending on your environment and options selected during the installation, it will be either a self-signed certificate or a certificate obtained from the Active Directory Certificate Services (AD CS).
If the certificate was obtained from the Active Directory and you didn’t change the Server name on the Network tab, the certificate is already valid and trusted by the clients from the corresponding Active Directory domain or forest. So, no additional actions are required.
Adding Repositories
Freshly installed VisualSVN Server instance does not include any default repositories. You must create new or import existing Subversion repositories into VisualSVN Server. VisualSVN Server Manager console helps you add the repositories in a straightforward wizard-driven mode.
Importing Existing Repositories
To import an existing repository, run Import Existing Repository wizard in VisualSVN Server Manager:
- Start VisualSVN Server Manager console.
- Right-click Repositories node.
- Click Import Existing Repository.
- Follow the steps of the wizard to complete the task.
When importing a repository with Subversion hook scripts, you should carefully test and review the hooks to ensure that they work on the new computer as expected.
Creating New Repositories
To create a new repository, run Create New Repository wizard in VisualSVN Server Manager:
- Start VisualSVN Server Manager console.
- Right-click Repositories node.
- Click Create New Repository.
- Follow the steps of the wizard to complete the task.
Configuring User Permissions
VisualSVN Server lets you specify the initial user access permissions when you create new or import existing Subversion repositories. Before the server goes live, it is recommended to review the user permissions and adjust them if needed.
The server administrators and repository supervisors must understand the access control principles in Subversion. Read the article KB33: Understanding VisualSVN Server authorization for more information.
VisualSVN Server fully supports path-based authorization with Read / Write, Read Only and No Access access levels. You can manage user permissions on any level including per-folder and per-file levels.
VisualSVN Server Manager console provides an intuitive graphical interface for access control. You can define and manage user access permissions without having to deal with command line tools and text-based configuration files. What is more, VisualSVN Server allows you to automate access permission management and perform it in bulk with the help of VisualSVN Server PowerShell.
Configuring antivirus exclusions
During the installation, VisualSVN Server automatically adds necessary antivirus exclusions to the built-in Windows Defender antivirus. However, if you use other antivirus software, it is highly recommended to add exclusions manually. Read the KB171: Configuring antivirus exclusions for VisualSVN Server article for more information.
Final Check-Up
At this point, the initial VisualSVN Server configuration should be complete. It is time to perform a quick test drive to ensure that the repositories are online.
VisualSVN Server makes Subversion repositories available to users through the HTTP(S) protocol. To access the data in your repositories, you can use a web browser or Subversion client including command-line svn.exe and GUI clients.
When on the quick test drive, you should be logged to Windows under the account that has appropriate access permissions to VisualSVN Server. If you have configured VisualSVN Server to use Integrated Windows Authentication, you should be not prompted for your username and passwords. You should not be warned about non-trusted SSL certificate, too.
Subversion Client Test Drive
Subversion client is the main tool to access and operate with the versioned data in your Subversion repositories. As part of the final check-up, you should checkout a working copy using Subversion client.
To access the repository, you should first obtain its URL. You can always find the correct repository URL using VisualSVN Server Manager console:
- Start VisualSVN Server Manager console.
- Expand Repositories node.
- Right-click a repository or repository path and click Copy URL to Clipboard.
You can paste the URL using the Ctrl-V keyboard shortcut into the URL field of your Subversion client. If you use the command line svn.exe client, you should run svn checkout command to create the working copy of your versioned project. Here is an example:
Repository Web Interface Test Drive
VisualSVN Server comes with a rich web interface for Subversion repositories. The web interface is automatically enabled for each repository hosted on VisualSVN Server.
As part of the final check-up, start your web browser and open the Repository Web Interface. To access the repository, you should first obtain its URL. You can always find the correct repository URL using VisualSVN Server Manager console:
- Start VisualSVN Server Manager console.
- Expand Repositories node.
- Right-click a repository or repository path and click Copy URL to Clipboard.
As soon as you copy the URL, you can paste it using the Ctrl-V keyboard shortcut into the address bar of the web browser and navigate to the repository.
Performing Advanced Configuration
VisualSVN Server offers additional unique features that are suitable for server installations of any size. These features are must-have for VisualSVN Server installations in corporate environments.
Schedule Repository Verification
VisualSVN Server comes with built-in scheduled verification of the Subversion repositories. The verification jobs check the integrity of your repositories. Verifying your repositories on a regular basis is important for early detection of repository corruptions caused by disk failures. Read the article KB115: Getting started with repository verification jobs for setup instructions.
Schedule Repository Backup
VisualSVN Server comes with the built-in Backup and Restore solution for the Subversion repositories. The feature helps you make daily backups of the repositories of any size and does not have any impact on performance and user operations. What is more, the Backup and Restore feature in VisualSVN Server is very easy to setup and maintain.
When deploying VisualSVN Server, we suggest that you add a scheduled backup job to ensure that your repositories are properly backed up. Read the article KB106: Getting started with Backup and Restore for setup instructions.
Enable commit email notifications
A commit email notification is an email that is sent in response to a new commit in the repository. VisualSVN Server can be configured to automatically send such email notifications for new commits in all or selected repositories. This can be achieved by using the Subversion hook handler included in the server’s installation package. Read the article KB18: Configuring Email Notifications in VisualSVN Server for setup instructions.
Enable Access and Operational Logging
VisualSVN Server Enterprise Edition comes with the Access and Operational Logging feature. Access and Operational Logging allows you to monitor all HTTP requests and all logical Subversion operations processed by VisualSVN Server, including read-only operations such as Checkout and Update. You can use Windows Event Viewer to view the logs because the log entries are recorded to the standard Windows Event Log.
Follow these steps to enable Access and Operational Logging:
- Start VisualSVN Server Manager console.
- Click Action | Properties.
- Click Logging tab.
- Select Access logging and Operational logging.
- Click Apply.
By default, the maximum size of the Windows Event Logs is 20480 KB which may be less than optimal for larger VisualSVN Server installations. It is recommended to review and increase the maximum log size depending on your VisualSVN Server’s load. You can also adjust the retention policy for the event logs. Follow the instructions from Microsoft TechNet:
Enable Repository Management Delegation
VisualSVN Server Enterprise Edition comes with the Repository Management Delegation feature. The feature helps you delegate user permission management duties by assigning repository supervisors — non-administrative users who can manage user permissions with VisualSVN Repository Configurator tool. Read the article KB62: Getting started with Repository Management Delegation for setup instructions.
Enable Multisite Repository Replication
VisualSVN Server Enterprise Edition comes with the Multisite Repository Replication feature. The feature allows you to deploy replicated repositories at remote locations to enable geographically distributed teams to work with Subversion repositories at LAN speeds. Read the article KB136: Getting started with Multisite Repository Replication for setup instructions.
Enable Remote Server Administration
VisualSVN Server Enterprise Edition comes with the Remote Server Administration feature. VisualSVN Server Manager console is implemented as a standard Microsoft Management Console (MMC) snap-in and allows you to manage multiple Subversion servers remotely from a single console. Read the article KB25: Configuring Remote Administration for setup instructions.