DevOps Zone is brought to you in partnership with:

Jessica Thornsby is the Technical and Creative Copywriter at WANdisco, where she writers regular tutorials on Apache Subversion, TortoiseSVN, uberSVN, and all things version control. She spends her spare time editing the CD reviews section at www.leedsmusicscene.net, contributing to A Short Fanzine About Rocking, and researching her family tree. You can find her on Twitter @jthornsby Jessica is a DZone MVB and is not an employee of DZone and has posted 29 posts at DZone. You can read more from them at their website. View Full User Profile

Understanding SmartSVN’s Revision Graph

04.21.2013
| 1107 views |
  • submit to reddit

SmartSVN, the popular cross-platform client for Apache Subversion, provides all the tools you need to manage your SVN projects out of the box, including a comprehensive Revision Graph.

SmartSVN’s Revision Graph offers an insight into the hierarchical history of your files and directories, by displaying information on:

  • Merged revisions

  • Revisions yet to be merged

  • Whether a merge occurred in a specific revision

  • Which changes happened in which branch

  • When a file was moved, renamed or copied, along with its history

The Revision Graph is useful in several tasks, including identifying changes made in each revision before rolling back to a previous revision, and gathering more information on the state of a project before a merge.

Accessing the Revision Graph

To access the Revision Graph, open the ‘Query’ menu and select ‘Revision Graph.’

revision graph

Understanding the Revision Graph

In the Revision Graph, projects are mainly represented by:

node Nodes – represent a specific entry (file/directory) at a specific revision.

branch 

    Branches – a collection of linked nodes at the same URL.

The main section of the Revision Graph is the ‘Revisions’ pane, which displays the parent-child relationships between revisions. Revisions are arranged by date, with the newest at the top. In addition to the main ‘Revisions’ pane, the SmartSVN Revision Graph includes several additional views:

  • Revision Info – displays information on the selected revision (such as revision number, date, author who created the revision etc.)

revision info

  • Directories and files – displays modified files in the selected revision. This is useful for pinpointing the revision at what point a particular file changed or disappeared from the project.

From this screen, you can access several additional options:

  • Export – export the Revision Graph as an HTML file by selecting ‘Export as HTML…’ from the ‘Graph’ menu. This file can then be easily shared with other team members.

  • Merge Arrows – select the ‘Show Merge Arrows’ option from the ‘Query’ menu to view the merge arrows. These point from the merge source to the merge target revisions. If the merge source is a range of revisions, the corresponding revisions will be surrounded by a bracket. This allows you to get an overview of merges that have occurred within your project, at a glance.

  • Merge Sources – select the ‘Show Merge Sources’ option from the ‘Query’ menu to see which revisions have been merged into the currently selected target revision.

  • Merge Targets – select ‘Show Merge Targets’ from the ‘Query’ menu to see the revisions where the currently selected target revisions have been merged.

  • Search – if you’re looking for a particular revision, you can save time by using ‘Edit’ and ‘Search.’ Enter the ‘Search For’ term and specify a ‘Search In’ location.

  • Branch Filter – clicking the ‘Branch Filter’ option in the ‘View’ menu allows you to filter the display for certain branches. This is particularly useful if you’re examining a large project consisting of many different branches.
Published at DZone with permission of Jessica Thornsby, author and DZone MVB. (source)

(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)