Home     Contact Us     SoftLanding     Deutsch     Español

The Software Management Experts

    June 2005  Volume 9, Number 1

Introducing TurnOverSVN

iSeries-Based Source Version Control for PC, Web, and Java Development

By Paul Thiel, Director of Professional Services

With the release of TurnOver 5.4, SoftLanding has introduced an exciting new version control module called TurnOverSVN. Based on the award-winning technology of the open source product Subversion, TurnOverSVN offers advanced version control for Java, PC, and Web developers working in a team environment — and serves it from your iSeries computer.

Working under the framework of TurnOver's existing change management for native iSeries development, TurnOverSVN extends that system's issue tracking, project management, deployment, and change history capabilities to non-native software projects for control that spans both platform and product life cycle. This is great news for your company's IT managers and auditors, who can now monitor all development activity across your entire enterprise through a single iSeries database.

The Best of Both Worlds

Before now, advanced iSeries development companies that needed both PC source version control and traditional iSeries change management had limited options. They could choose a commercial third-party product for PC version control — often prohibitively expensive — or go with free open source technology, which is not always easy to install and configure and usually comes without guaranteed service levels. Moreover, almost all available solutions require the source repository to run on a non-iSeries platform, which introduces an additional point of potential failure to the overall solution.

TurnOverSVN is a hybrid version control solution that offers the best of both the commercial and open source worlds. It consolidates your entire change management system on the secure, reliable iSeries platform. Its open source roots allow us to offer TurnOver customers sophisticated functionality, plus the installation and support services businesses need, without significantly increasing your total cost of ownership.

The Underlying Technology

To serve as the foundation of TurnOverSVN, we ported the Subversion open source version control solution to the iSeries platform. Subversion was developed to replace CVS, the original de facto standard in open-source version control. Nearly four years in the making, Subversion builds on the best bits of CVS while writing out many of its shortcomings.

Subversion offers a range of function that is appropriate for even the most demanding team environments. Its capabilities include versioning for files, directories, and metadata; highly efficient branching and tagging; atomic (that is to say, all-or-nothing) commits; and support for application re-factoring.

(If you would like to review the version control concepts behind Subversion in more detail, we recommend Pragmatic Version Control With Subversion by Mike Mason. 1)

TurnOverSVN, the business-ready version of the port, takes into account today's need for full-life—cycle auditability of the development process, unified management of all development teams, fast implementation, and reliable tech support. It includes the base Subversion for OS/400 framework, complete integration into the TurnOver workflow and change history database, Windows- and Eclipse-based user interfaces, installation and set-up wizards, documentation, and of course, our comprehensive technical support. For a list of features, please see our TurnOver 5.4 Memo to Users, which can be found on our customer site at https://support.softlanding.com/support/TurnOver/MemoUsers.jsp.

Let's take a quick tour of TurnOverSVN's components.

The Repository

The TurnOverSVN repository boasts two key design features that add significant functionality for supporting PC and Web development. The first is the ability to track all versioning data, including deletions and renaming for both files and folders. This particular ability allows TurnOverSVN to properly manage the process of application re-factoring, where files and folders are often renamed or deleted as part of the rationalization of code. The second notable capability is something called an "atomic commit." During an atomic commit, TurnOverSVN guarantees an all-or-nothing delivery of changed artifacts to the repository. This is critical to preserving the repository's integrity should an error occur during the commit operation.

Already Have a PC Source Repository?

If you already maintain your Java, Web, and PC source code in a source repository such as Microsoft Source Safe, CVS, or Serena's Version Manager, you can choose to either stay with your existing solution, or convert to TurnOverSVN. It's entirely your choice.

Staying with your existing solution

If your existing solution works well for you and you do not see a compelling reason to switch to TurnOverSVN, you can feel comfortable staying the course. TurnOver's tradition of openness continues with APIs that help you interface to whatever tools you use today. If you use Serena's Version Manager, you can be confident that we will continue to support the TurnOver/Version Manager Interface.

Converting to TurnOverSVN

If you prefer to take advantage of TurnOverSVN's deep integration with TurnOver, you'll find a great many tools and scripts in the open source community that can make the migration of your code to Subversion and TurnOverSVN a cinch. Two of the more common scripts, VSS2SVN and CVS2SVN can be found on tigris.org at http://vss2svn.tigris.org/ and http://cvs2svn.tigris.org/ respectively.


Server Options

Implemented on your iSeries computer's IFS, a TurnOverSVN repository can be served using one of two possible server options. The first is an efficient, easy-to-install server option called the SVN Server (SVNSERVE). This server option provides good basic repository management functionality and fast, easy setup. This option is likely to be the server option of choice for most customers — at first, anyway.

The second option is to deploy TurnOverSVN as a plug-in to the Apache 2.0 Web Server. This approach provides a more comprehensive array of configuration options, including the opportunity to leverage some of your existing authentication infrastructure like SSL, Certificates, and LDAP/Active Directory databases.

User Interface Clients

TurnOverSVN

Right-click any file or folder in Windows Explorer for instant access to TurnOverSVN operations.

Once configured and running, the TurnOverSVN repository on your iSeries can be accessed by any Subversion-based client running on just about any platform. To that end, SoftLanding has packaged two client offerings for you to use (three, if you include the DOS command line).

Our Windows client is integrated directly into the Windows shell. This means that you can access all of TurnOverSVN's version control operations directly from the context menu in Windows Explorer. This has two distinct advantages over direct IDE integration. First, you do not need to run an additional application to access version control functions. Second, real time status information regarding your local working copy is available in the Windows Explorer at all times.

For Java and Web development, our Eclipse integration for WDSC and IBM's Rational Application Developer is integrated directly into the IDE through the Team API. In this way, TurnOverSVN supports team services in Eclipse and can participate fully in all your projects' file and directory operations — such as renames and deletes — as well as in all IDE application re-factoring operations.

Setup and Administration

TurnOverSVN

Convenient repository management tools are built into TurnOver Administrator.

One of the most significant value-adding components of TurnOverSVN over the standard Subversion for OS/400 solution is its simplified set of tools for setting up and managing your repositories and servers. These tools are provided as part of the new TurnOver Administrator seat.

Within TurnOver Administrator, a TurnOverSVN node provides access to a host of administration functions, including the TurnOverSVN Configuration Wizard. This wizard will create on your iSeries server all the necessary user profiles, directories, job descriptions, and autostart jobs that you'll need for TurnOverSVN. Additional utilities help you quickly create and configure the realms and repositories that will hold and secure your project source code.

Conclusion

This article merely scratches the surface of TurnOverSVN. Hopefully, though, you're intrigued enough to install it and play with it so you can assess its suitability for your company's needs. We encourage you to schedule a customized TurnOverSVN Workshop for a more in-depth study.

To learn more about TurnOverSVN or about any of the new features in TurnOver Release 5.4, please contact our Customer Services Manager, Amy Lanza (training@softlanding.com). Amy will help you assess your needs and arrange training or consulting for you as appropriate.

Copy-Modify-Merge

Increasingly popular at the moment, the copy-modify-merge concept is based on an optimistic locking model and is ideal for minimizing developer contention over shared resources in concurrent development environments.

The principle is that each developer works on a local copy of the project codeline, in relative isolation, without locking any of the project resources. Changes are made and committed to the repository on a periodic basis — ranging from hourly to daily — based on the nature, complexity, and impact of the changes. In order to keep each developer up to date with the other developers' changes, an update operation is used to refresh their local working copy.

While this may sound a little complicated, in reality it is very straightforward, and unless two developers have changed the exact same lines of code, the update operation merges the changes automatically behind the scenes, without needing any intervention from the developer.


1 Mason, Mike. Pragmatic Version Control with Subversion. Raleigh: The Pragmatic Bookshelf, 2005.

WHAT'S NEW
Sign Up Now to Receive The Landing Zone eNewsletter
| more