SmartSVN Features

Full Subversion 1.14 support

SmartSVN supports the Subversion 1.14 working copy format and client-server protocol and virtually all Subversion commands, including many extended options.

Tag Browser

Tag and Branch Support

You can work with tags and branches as conveniently as if they were native Subversion features. Once you have defined the project repository locations for the trunk, the tags and branches, you won't have to deal with hard-to-remember URLs anymore: Just use tags and branches the way you're used to from other version control systems.

For example, when you need to switch to a different branch or tag, you won't have to type the branch or tag name. but Instead, you can simply select it from a Tag Browser that displays branches and tags in their hierarchical order.

Incoming and Outgoing Change Markers

In the project directory view you can instantly see which directories contain local modifications (red arrows) and which directories have been changed in the repository (green arrows).

In combination with the Remote State of the files you can detect and avoid potential conflicts before they actually occur. It even shows files and directories which have been added to the repository and aren't locally available yet.

Incoming and outgoing changes
Revision Graph

Revision Graph

The Revision Graph shows the hierarchical history of a file or directory. It provides operations similar to those of the Log command, such as comparing two revisions of a certain file, but surpasses the Log command in presentation and level of detail. Also, the Revision Graph can show upon request which revisions have been merged, have been merged in the selected revision, or haven't been merged yet.

From the Revision Graph you can instantly see:

  • which changes happened in which branch,
  • which revision represents which tag,
  • when a file was moved, renamed or copied along with its history.

Windows Explorer Integration

In addition and as an alternative to the standalone project view, SmartSVN comes with Windows Explorer integration. This includes all major commands, and you can run the commands directly from within your favorite file manager. SVN file states are shown as icon overlays.

Windows Explorer integration
File compare with syntax highlighting

File Compare

SmartSVN contains a built-in file compare with inner-line comparison and the ability to edit the compared files directly.

The syntax coloring is file name dependent and can be configured in the preferences.

Properties Support

With SmartSVN there's no need to edit common Subversion properties, e.g. external definitions, in plain-text. Instead, you can comfortably select the repository locations using a repository browser. Of course, SmartSVN also makes suggestions for relative external URLs, which were introduced in SVN 1.5.

Sometimes, though, it may be necessary to edit properties as plain-text, for example when you have to change a large number of external definitions. Of course, this is also supported by SmartSVN. Property changes are displayed in an embedded compare window.

Support for short externals. Edit properties with properties compare.
Project Transactions stand-alone transactions window

Transactions Views

The Transaction view in the SmartSVN main window automatically fetches information about new revisions from the repository. It will keep you up-to-date on any commits that took place within your project - automatically, clearly, and even from other branches, if you wish. SmartSVN also can watch for changes of other repository locations, e.g. for libraries used by the project.

Green arrows indicate new revisions in the project repository. Blue entries with a blue star represent new "unread" revisions from other watched repository locations.

The project-independent Transactions window can watch for commits in any repository. This makes it easy to stay informed about changes in libraries used in your project, or about all SVN activities within your team or the whole company.

Powerful Commit

SmartSVN (optionally) suggests adding new or removing missing files, and is capable of detecting moved and renamed files.

SmartSVN allows committing changes to externals (nested working copies), giving you the choice between providing one commit message for all affected repositories and providing individual commit messages for each. You don't have to select the external's root directory like in other SVN clients.

When entering the commit message, you can activate a seamlessly integrated compare view. Use this compare view to review your changes in order to write an appropriate commit message or to deselect unrelated files from the commit.

SmartSVN can spell-check your commit messages using Open Office or Mozilla dictionaries. When dictionaries for different languages are registered, SmartSVN automatically detects and uses the best matching language, so you don't have to switch between languages manually.

The Issue-Tracker support (Bugtraq-Properties) is seamlessly integrated into the commit wizard and other modules. For instance, SmartSVN converts issue numbers to links to your issue tracker:

Commit Compare link detection for configured bugtraq-properties
It's possible to select open JIRA issues and mark them as resolved after successful commit.

Commit Wizard: JIRA integration

You can pick a commit message from a list of open issues fetched from a JIRA issue tracker and optionally mark the selected JIRA issue as resolved if the commit succeeds. This relieves you from having to access JIRA through your web browser after you have fixed a bug or implemented a new feature.

Change Sets

When working on a project, often different tasks need to be done at the same time, e.g., implementing a feature in file X, fixing a bug in file Y and correcting a typo in file Z. This causes your working copy to contain a mix of modifications from different tasks.

Change Sets allow you to organize files (and also directories, because these can have property changes) into groups of related changes which can then be committed separately. Among other things, this can make the commit log a lot more readable.

With SmartSVN 6.5 you can drag-and-drop files onto existing Change Sets.

Starting with Subversion 1.5 Change Sets are also supported by the command line client as well as other SVN clients. In contrast to these other SVN clients, SmartSVN allows to place directories into Change Sets, because directories may contain task-related property changes, too.

Change Sets Drag 'n drop files to changeset.
Repository Browser

Repository Browser

With the Repository Browser you can directly browse the structure of your repository. More specifically, you can:

  • check out directories,
  • view files at different revisions,
  • create new directories,
  • move or rename files and directories,
  • copy files and directories (e.g. to create branches),
  • remove files and directories,
  • show file or directory Logs,
  • show file or directory Revision Graphs,
  • show annotated file views.

Copying and moving can be done with drag and drop. Also, if configured, the Repository browser displays tags and branches differently than ordinary directories.

Annotate/Blame

With the Annotate you quickly can see when a certain line had been added to a text file (and who did it). Different coloring options also allow to get a quick impression of what parts of a file are old or new.

Annotate
Change Report

Change Report

The Change Report is a file-compare optimized for multiple files. Like the standard file compare, the Change Report displays the changes between two files on a per-line level. You can open Change Reports for local changes in the working copy or for changes between arbitrary revisions. For local changes it displays the file's Change Set and allows you to assign the file to another Change Set.

Conflict Solver

Even in perfectly communicating teams it's possible that two people independently change the same part of a file. The resulting conflict needs to be resolved manually. SmartSVN's built-in Conflict Solver combines the freedom of a general three-way-merge with the ability to detect and easily resolve such conflicts. If needed, you can edit the resulting files as you like — you are not bound to accept or reject entire change blocks.

Conflict Solver
Directory Log

Log

The Log of a file or directory displays its previous revisions back to a specified time in the past. You can see the commit messages, the author, the changed files and directories. You can show a Change Report or a File Compare to see the actual file changes or even perform a rollback to a certain revision if necessary.

Output View

SmartSVN provides a tidy presentation of the outputs of the commands you've run, which gives you a good overview of what's happened locally, e.g., which files have been reverted or what has been changed by an update. Possible problems (e.g. conflicts) are highlighted. Depending on the command, convenient context actions such as Show Changes may be available.

Command Output