Getting to know RapidSVN

SVN is not only meant to be interacted with using a client that has a graphical interface. Torrents and FTP are largely dealt with graphical using interfaces, but like SVN, they can be issued using the command line. Just like Deluge uses libtorrent as its backend with its own set of extended features, RapidSVN is a graphical frontend to the free-as-in-freedom Apache Subversion code with revision-comparing features that might interest you.

While some network administrators swear by direct SVN command-line manipulation, just as some programmers prefer a text editor and a terminal window open for writing their software, the choice is there for you to have some room for flexibility in using SVN without getting lost.

Understanding SVN

An SVN repository is like a wiki for file editing. Much of the time, you connect to the server to download the newest files to your machine, similar to reading a Wikipedia article. And other times, you decide to upload your own set of changes, similar to editing a Wikipedia article, and this may or may not require an account with the server to fulfill that action, similar to Wikipedia articles which are locked from editing by visitors. SVN is designed to be able to make multiple changes in a single revision, however, and RapidSVN's click-to-select type of interface is what sets it apart from both the command line and GUI integration software such as TortoiseSVN.

Terminology

Just like torrents require a simple terminology in your head like seeds, peers, and trackers, SVN has its share of a couple words that you'll need to know.

SVN stands for Subversion and is a protocol (look that up if you need to know!) for making revisions to files on a network.

A repository is the folder set up on the server containing the project's files.
The server is the physical machine that you connect to over the Internet to read from the repository.

To check out a copy of the repository is to download any or all of the files in the repository, and to check out a working copy is to download an entire clone (ie. all of the files) of the repository.

To update your copy of the repository is to update the files which you have to the latest revision.
To commit to the repository is to upload your own changes to the repository.

A changeset is the group of changes that were made to the repository in a single revision. A changeset includes the user's IP address and the date and also includes room for a comment by the user.
A user applies a revision to the repository by committing a changeset and optionally a descriptive comment. The revision number of the repository then increases by 1.

Setting up RapidSVN

RapidSVN can be installed by a package manager on most Unix-based operating systems or compiled by source, and it has a typical straight-forward installer on Windows.

Adding your desired repositories

First, create an empty folder anywhere on your computer that you think would be great to hold the repository's contents. Then open RapidSVN, and take note of its Bookmarks pane on the left. To add a repository, right-click the pane and click "Checkout New Working Copy...". In the dialog that appears, specify the URL of the repository, and the folder that will hold your copy of the repository, and leave the next checkmarks as they are. Then click OK. It may take a while to download from large projects, but you will know that the download is complete when RapidSVN displays "Status: Ready" in the log at the bottom of the window.

Viewing repositories without downloading their entire contents

To do this, right-click the Bookmarks pane on the left and click "Add Existing Repository...". In the dialog that appears, specify the URL of the repository, and the repository will be added to the Bookmarks pane with a unique "Internet-only" icon. You will now be able to receive individual files from the repository and make individual revisions (roughly one file per changeset).

Common use of RapidSVN

Now that you have your things set up, there are a few particular things that you should take note of when you're actively using RapidSVN.

The following information only applies to working copies.

Updating your copy

To update your copy to the latest (or simply a newer) revision, select your repository in the Bookmarks pane. Notice that even though the repository appeared on the right, right-clicking anywhere will not show up with the Update or Commit items, and that when you select Modify at the top, the two items are greyed out. To interact with the repository, simply expand the repository's list in the Bookmark pane. You should now have full functionality with the repository.

So now, you can simply right-click and choose "Update..." and specify which revision you want to update to.

Committing changes

To commit changes to the repository, let's start off by assuming that your copy is untouched from the latest revision. Then, enable your functionality with the repository by reading the first paragraph of "Updating your copy".

The magic of RapidSVN when it comes to this is the ability to pick what you want to update or commit under a graphical interface. To most users, nothing beats that.

Advanced use

One other trick includes graphical difference comparing. RapidSVN does not come immediately with this feature, but if you think you'll use it, you can install one on your system and add it to RapidSVN under the Preferences window, which you can open through View -> "Preferences...".