VersionVault Express’s primary UI is a browser-based application.  It supports editing and saving single files, comparing files and reviewing change sets, simple cases of rebasing and delivering between streams, and more.  But what if you need to work on multiple files at once?     Or you need to compile code to test it?  Or your changes conflict with another developer’s changes to the same elements?  For cases like these, you’ll want to use desktop client tools and connect them to the VersionVault Express server.

Once you have client tools set up (more on that later), there are two ways to get copies of the code from your stream onto your own computer: downloading a snapshot and loading a view.

Downloading a snapshot

Downloading a snapshot of your stream is simple: just click the download-snapshot icon () while you are viewing your stream in the browser interface.  This will generate and download a zip file containing the current versions in the stream.

If a read-only copy of the stream meets your needs (you don’t need to synchronize any changes back to the stream, and you don’t mind replacing your entire local copy every time you download a new snapshot), this is a simple and fast way to get a copy of the current state.  This might work great for running a build or a test suite.  But if you need to keep track of changes and check them back into the project’s VOB, then you’ll want a view managed by the VersionVault Express client.

Client and server views

Views are used to present the contents of a stream in a VersionVault Express project.  Each view provides OS file system access to the checked-in contents of the stream, plus any files you create that are not under version control.  There’s a view managed inside the VersionVault Express server on your behalf whenever you access a stream through the browser interface or REST APIs.  However, that view is not directly accessible to your client.

Creating a view on your client

To create a view for use on your client, you need to install the VersionVault Express client.  Follow the link at the upper right of the browser interface () for instructions and installation packages.  If you use Eclipse as an IDE, you can extend it with the VersionVault Explorer plugin from the Eclipse update site installed with the client (see the documentation linked below).

Once you have the client installed, you can click on the ”open in VersionVault Explorer” link on the browser‘s streams detail page ()  to open the client GUI and create a new view (or reopen an existing view) on the same stream.

When you use the VersionVault Explorer client to create an automatic or web view on your stream, you get a separate view that is independent of the server-managed view.  After you create your client’s view, it will only show changes from other views/users when you explicitly update it, through the “Refresh->Update from repository…” action in VersionVault Explorer or ‘rcleartool update’ command line action.   Updating the view will pick up any checked-in changes made by other views in the stream, plus any changes added to the stream by a completed deliver or rebase operation.

On your client, you can check out versions with VersionVault Explorer or rcleartool, then make changes to files using your favorite editing tool.  Once you are satisfied with the changes, check them in to make them visible to other views and other users accessing the stream.  The browser UI’s underlying view will see checked-in changes when you click the refresh icon () on the stream view page.  Any other automatic or web views on the stream will need updating to see your newly-checked-in changes.

Once your changes are ready to share with your team, you’ll merge them into another stream using the deliver operation.

Deliver and Rebase

VersionVault Express uses deliver and rebase operations to move changes between streams.  For simple changes, the browser UI can handle the operations.  However, the browser UI can’t handle deliver and rebase cases involve conflicting changes in the source and target streams.  If you have conflicting changes, such as two developers’ modifications to the same section of a text file, you need to use views on your client to process the deliver or rebase with VersionVault Explorer or rcleartool.  (If you don’t already have a view on both streams, you can create one before you start the operation.)

In VersionVault Explorer, use the Deliver->Default menu item or ‘Default Deliver’ from the toolbar button  ( ) for deliver.  Use the Rebase->Default menu item or ‘Default Rebase‘ from the toolbar button  ( ) for rebase.  VersionVault Explorer will prompt you to resolve merge conflicts, after which you can test the results in the view before completing the operation (checking in the changes to the target stream).

Remember to update your other views on the target stream after a rebase or deliver.


You’ve learned how to work with a VersionVault Express server using the VersionVault client to create and maintain an automatic or web view on your client.  You’ve also learned how to make changes visible in multiple views accessing the same stream in the VersionVault Express project, and how to process complex rebase and deliver operations on your client.

For more information visit our blog site.

Comment wrap
Further Reading
Secure DevOps | April 29, 2022
Installing VersionVault Express on AWS
The blog aims to create a zero to fully working instance of VersionVault Explorer on AWS. The assumption is that the reader has a valid credential on AWS with permission to EC2 and S3 on an admin level. We also presume, the user has his initial setup in place and can take off with the installation with the instructions that follow.
Secure DevOps | January 13, 2022
Comparing file in VersionVault Express
VersionVault Express features an intuitive side-by-side comparison viewer where you can easily compare files and directories. VersionVault Express not only allows you to compare elements against their immediate predecessor but also to compare them against the changeset predecessor.
Secure DevOps | January 12, 2022
How to automatically create webhooks on new streams
In this article we’ll look at one such extension and show how to automatically give newly created streams the ability to request builds.
Filters result by