It mops the floor with Xcode's Subversion support and allows me to do version control operations much faster than I could in the terminal...
Explore the major features of SmartSVN and see how they can be applied to your business.
Work Your Way
With a standalone GUI or integrated in the operating system. On the platform of your choice.
Familiar Concepts
Continue to work with concepts you already know from other version control systems.
Be Informed
SmartSVN keeps you up-to-date on SVN activities of your team members and projects.
Effective GUI
It's the passion for details that makes SmartSVN more than just another GUI to SVN.
Customize It
Change UI layouts, SVN defaults or even write new plug-ins against the Plugin-API.
SmartSVN supports the Subversion 1.6 working copy format and client-server protocol and virtually all Subversion 1.6 commands, including many extended options.
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, like CVS.
For example, when you need to switch to a different branch or tag, you don't have to type the branch or tag name but you can simply select it from a Tag Browser showing branches and tags in their hierarchical order.
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.

SmartSVN Enterprise now has an Plugin-API for extending SmartSVN the way you need for your work-flow. What can be done with the Plugin-API:
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. Starting with SmartSVN 5 the revision graph can show upon request which revisions are already merged, merged in the selected revision or not yet merged.
From the Revision Graph you can instantly see:
As an additional alternative to the standalone project view, SmartSVN provides a Windows Explorer integration including all major commands which can directly be performed from within your favourite file manager. SVN file states are shown using icon overlays.
Quite similar to the Explorer integration, SmartSVN also provides a Finder integration.
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.
|
|
|
SmartSVN contains a built-in file compare with inner-line comparison and ability to edit the files directly.
With SmartSVN you don't need to edit common Subversion properties, like external definitions in plain-text. Instead you can comfortable select the repository locations using a repository browser. Of course, SmartSVN also makes suggestions for relative external URL which were introduced with SVN 1.5.
But if you prefer, e.g. if you have to change a lot of external definitions, you edit properties in plain text - you have the option. Property changes are displayed by an embedded compare control.
If you changed subversion properties of a file, it is displayed using a different icon.
Property changes now also can be shown from the Log, Revision Graph or Transactions view.
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.
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.
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.
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.
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.
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:
You can pick the commit message from a list of open issues for the JIRA issue tracker and optionally mark the selected JIRA issue as resolved on successful commit. This relieves you from accessing JIRA via you browser when fixing bugs or implementing new features.
This JIRA plugin is implemented using the Plugin-API and is available as source code. If you are using a different issue tracker, you can derive your own issue tracker integration from these sources.
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.
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.
With SmartSVN 6 you can drag-and-drop files to existing change sets.
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.
With the Repository Browser you can directly browse the structure of your repository. You can:
Copying and moving also works by drag and drop. If configured, the Repository browser also shows tags and branches differently than "normal" directories.
Because SmartSVN Professional supports tags and branches just like they were built-in to subversion, you don't need to bother with URLs.
Merge tracking remembers which revisions of which branches already have been merged. When cherry-picking revisions to merge, SmartSVN Professional shows not yet merged revisions with a green arrow making it hard to select the wrong revisions.
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.
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.
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.
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.