Some of our staff is not very technical, and SmartSVN has been much easier to adopt than other Subversion clients...

Wyeth Ridgway, President / Technical Director of Leviathan Games

Features & Screenshots

Below you will find the major features which are available in SmartSVN.

Tag and Branch Support (SmartSVN Professional) new

With SmartSVN Professional you can handle tags and branches as convenient as if they were a native Subversion feature. Once you have defined the project repository locations for the trunk, the tags and branches, you won't need to deal with hard-to-remember URLs anymore. Just use tags and branches as you are used to from other version control systems, e.g., CVS.

When, for example, you need to switch to a different branch or tag, of course you don't have to type the branch or tag name. You can select it from a Tag Browser showing branches and tags in their hierarchical order.

Tag Browser

Incoming and Outgoing Change Markers

In the project directory view you can instantly see which directories contain local modifications (red arrows) and which directories are changed in the repository (green arrows, SmartSVN Professional). In combination with the Remote State of the files (SmartSVN Professional) you can detect and avoid potential conflicts before they actually occur. SmartSVN Professional even shows files and directories which are new in the repository and not yet locally available - ready for fetching them.

Incoming and outgoing changes

Revision Graph (SmartSVN Professional)

The Revision Graph shows the hierarchical history for a file or directory. It provides similar operations as the Log command, like comparing two revisions of a file, but surpasses the Log in detail level and presentation.

Revision Graph

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 otherwise copied with history.

Subversion 1.5 Features new

SmartSVN supports Subversion 1.5 working copies and corresponding features. This includes, but is not limited to, merge tracking and sparse directories.

Merge tracking remembers what revisions of what branches already have been merged, thus merging is simplified significantly. SmartSVN Professional also allows to preview merge results before the working copy is actually changed ("dry merge").

merge dialog

When selecting the revisions or revision ranges to merge, SmartSVN Professional gives visual aid for the revisions not yet merged:

not yet merged revisions

With the support for sparse directories you don't have to check out the full project from the repository. Instead, you just can pick those files and directories you really need for your task.

sparse directories, select further items to update

Shell Integration (Windows: Explorer, Mac OS X: Finder) new

As an additional alternative to the standalone project view, SmartSVN provides a Windows Explorer integration (32-bit Windows) including all major commands which can directly be performed from within your favourite file manager. SVN file states are shown using icon overlays.

Windows Explorer integration - click to see full-size

Quite similar to the Explorer integration, SmartSVN also provides a Finder integration.

Mac OS X Finder integration - click to see full-size

On Windows and Linux (running Java 6) SmartSVN can be started in the background showing just a tray icon. It can be used to open a new project window quickly and keeps you informed about new transactions; like the Mac dock icon does, too.

tray icon notification about new transactions

Transaction Views new

The Transaction view in the project window automatically fetches information on new revisions from the repository. It will keep you informed about any commit that happened to your project - automatically and cleary and even from other branches, if you like. SmartSVN Professional 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 indicate new "unread" revisions from other watched repository locations.

Project Transactions

The project-independent Transactions window (SmartSVN Professional) watches for commits to arbitrary repositories. This makes it extremely convenient to stay informed on changes in libraries which your projects are using or all SVN activities within your team or the whole company.

stand-alone transactions window

Powerful Commit Wizard new

SmartSVN Professional (optionally) suggests to add new or remove missing files as well as it can detect moved and renamed files.

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

commit to different externals

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

Commit Compare

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 it manually.

spell-checker in action

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:

link detection for configured bugtraq-properties

Change Sets (SmartSVN Professional)

When working on a project, often different tasks need to be done at the same time, e.g., implement a feature in file X, fix a bug in file Y and correct a typo in file Z. This causes your project to contain modified files from different tasks.

Change Sets

Use Change Sets to organize these files (and directories, because these can have property changes) into groups of related changes. Committing your changes in task-related portions helps your team to better understand them when reading the log.

Starting with Subversion 1.5 Change Sets are also supported by the comand 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.

Repository Browser

With the Repository Browser you can directly browse the structure of your repository. 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 also works by drag and drop. If configured, the Repository browser also shows tags and branches differently than "normal" directories.

Repository Browser

Change Report (SmartSVN Professional)

The Change Report is an optimized file-compare for multiple files. As for 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 to assign it to another one.

Change Report

Conflict Solver (SmartSVN Professional)

Even in perfectly communicating teams it happens that two people independently change the same part of a file. Such a conflict needs to be solved manually. The built-in Conflict Solver combines the freedom of a general three-way-merge with the special ability to detect and easily resolve such conflicts. If needed, you also can edit the resulting files as you like, you are not bound to accept or deny whole change blocks.

Conflict Solver

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 rollback the revision, if it is necessary.

Directory Log

Output View

SmartSVN provides a tidy presentation of the command output which gives you a good overview of what has locally happened, e.g., which files have been reverted or what has been changed by the update. Possible problems (like conflicts) are highlighted. Depending on the command, convenient context actions, like Show Changes, are provided.

Command Output