Subversion 101

Let's go over some key terms and concepts to understand the Subversion folder structure and work flow

Repository

Subversion uses a centralized folder that contains current and prior versions of files. We store the repository securely on the cloud, allowing you and your team to access and edit the files from any computer. The repository is automatically setup when you create a project.

Working Copy

To use TortoiseSVN or any other Subversion client, we first need to make a local copy of or checkout the repository. This is referred to as the working copy. Modifications made to the working copy can later be submitted to the remote repository by committing changes so that the modifications can then be accessed by the rest of the team.

SVN repository folder

Subversion repositories are divided into three main folders 📁

branches

Branches allow you and your teammates to isolate modifications into separate lines of development. Branches can be used to try out new features without disrupting the main line of development. These isolated changes can be later merged into the main development. See creating branches

tags

Tagging allows you to mark particular revisions/iterations (e.g. prototype v.7) so that you can later refer back to this version to modify or review the files from this point in development. See creating tags

trunk

The trunk of the repository is a kind of special branch, typically used as the main line of development to refer to as the current stable version that you and your team can create branches off of.