What is Subversion?
Subversion is a (SCM), a tool for software developers which supports collaborative development of software within a team, and the tracking of changes to software source code over time.
Subversion is used by developers, and advanced users who need the very latest changes to the software (before releases occur). Software users generally do not need Subversion; typically they will made available by the project instead.
Developers should familiarize themselves with Subversion by reading .
Features
provides the following features in its offering:
- All are supported.
- are provided via HTTPS.
- Several Subversion clients are supported, including:
- (MS Windows).
- (MS Windows, Mac OS X, Linux, BSD).
- Repositories may be viewed via web browser using .
- Existing repositories may be , preserving history.
- Repository access may be granted or revoked from a developer using the Project Admin interface.
- A versatile set of is supported, including:
- for email-based commit notifications.
- , to ensure filenames are nonconflicting for a case insensitive platform (e.g. MS Windows).
- , to confirm the MIME type property is set appropriately after files are added.
- for integration with the CIA.vc activity tracking service.
- Administrators may manage the repository at a filesystem level using our .
- Commit and checkout events are counted in the .
- Service usage is not restricted by .
Management
Subversion service may be enabled for your project as follows:
- Login as a project administrator and go to the Project Summary page for your project.
- Under the Project Menu pulldown menu, click Feature Settings.
- Under the Available Features tab, check the Enabled checkbox. Your repository will be created within a few minutes.
Once Subversion has been enabled, you will need to before the repository may be written to.
The standard way to modify the contents of your repository is using a Subversion client as detailed in . Administrators may also (such as importing an existing repository or permanently purging a file from the repository).
Administrators may also manually manipulate their repository via svnadmin, and do their own dump / filter / restore work on their Subversion repositories via the site .
Details for using this feature can be found via the . Issue the help command for details:
adminrepo --help
Access
To access a Subversion repository, configure your Subversion client as follows (replace PROJECTNAME with the UNIX group name of the project):
- Hostname: PROJECTNAME.svn.sourceforge.net
- Port: 443
- Protocol: HTTPS
- Repository Path: /svnroot/PROJECTNAME
For clients that use a URL string:
Authentication
No username and password will be requested when performing read operations.
When performing write operations, you will be prompted for your SourceForge.net username and password. To perform write operations, your project administrator must have .
Backups
SourceForge.net performs routine backups for all of our servers and will restore from these backups in the event of catastrophic server failure. We encourage projects to make their own backups of Subversion data as that data restore can be performed by the project in the event of accidental data destruction by a member of the project team.
Backups of a Subversion repository may be made using .
Example (replace PROJECTNAME with the UNIX group name of your project):
rsync -av PROJECTNAME.svn.sourceforge.net::svn/PROJECTNAME/* .
Getting Help