WinSDE VersionWorks is used for everyday work in an SDE project. It includes a number of functions. Some of them are:
The main window shows work sessions which can be a work project structure or a system structure. The left part of the window shows the directory structure and the right part of the window shows files that are checked in the RCS library.
A specific view to the RCS library is selected, i.e. a specific version set of the files are shown. By default the latest versions of files are listed. For each file you can see the version number, its state, creation date, version author, and the locked state.
Another view to a work session is a display of the working directory and files placed in it. In that case it it possible to see if a working file is up-to-date, or a corresponding version file is newer (i.e. changed by another project member).
The same structure can be shown in different views.
You can use a number of standard Windows functions using the mouse:
Starting a Project Session
You select your work structure from the SDE projects you are a member of. If your work structure does not exist, you can create it. Select "Open Project" function and you get the list of your projects placed under the default project root:
The window shows your projects, connected systems to the project and your work structures. The working structures that exist are shown by gray folders. Red folders denote that the work structures do not exist. In that case you can create it by selecting the Create button. When you create your working directory you can decide where to place it. By default, it will be created in the project.
You can also update your working structure if some new subsystems have been created in the system.
Click the Open button to open your work session.
You can also start a session by simply selecting your working structure from the directory structure:
You can select two different views. You can display your working files or you can display versioned files that are placed in the RCS library. In the working file view, you will see the files in your working structure.
If you have selected Versioned View, you can choose which file versions you want to work with, i.e. you can select a view to the RCS files:
You can have a view to the file latest versions, or versions defined by a baseline name, or latest versions with a certain combination of states. You can also define a date and select those versions that are created after or before the specified date.
In addition to a version view, you can select to display files according to view filter where you can define the file types for showing files.
Do you want to see all versions of some files? Select the files of interest and click on the history command. You get the following window:
You see all the versions of selected files, earlier versions are marked with a light blue square. By double clicking on a version, you get it in your default editor, as a read-only file. You can select two versions and see the differences between them.
Check In/Check Out
You can check out a file version with or without locking it. If you lock it, you get a writable version, so you can change it. By default you check out the version you see in the view. In the working view, you will check out the latest version.
If you want to check out all files (without locking them), you can use Update Working Directory function:
You can select if you want to have subdirectories updated, and files overwritten. You can also change how the file versions should be selected. The default is your view settings, but you can change it in the dialog.
If you want to check in some new files, you have to use "Create Initial Version". Create initial version examines the file format, if it is a text (ASCII) or a binary format. Text files are saved in a different format as binary file. Check if the proper format was proposed by Create Initial Version.
When you check in a file that is already saved in the RCS library, the filetype (binary or ascii) is already saved, so you do not choose the format. That is the only difference between Create Initial Version and Check In dialog boxes.
Using Change Requests
When working in an SDE project you can register all changes in Change Requests (CR). Change Requests are documents that describe a logical change done in an SDE system. Each time you check in a file, you have to specify a CR to register the modified file version in. When using CRs, the Check In window also lists all existing CRs, and it makes it possible to create a new CR. The window below show the Create Initial Version window when CRs are used.
It is also possible to add a versioned file into a CR with the command Add File To CR.
You can do several things, when you check in a file: You can keep your work copy, you can even keep it locked. Write a comment describing the change you have done. You can define a version state - select a predefined one or insert a new one.
From VersionWorks you can check if all changed files in a specific directory are properly registered. Other functions related to CRs, you can find in WinSDE CR Manager and WinSDE CR Metrics.
Every file version checked in has a defined state. When you check in a file, the new file version gets by default the state Exp. When your changes are completed and you have tested them and you suppose that the file is ready for the new baseline, you should, as a developer set the state Stable on the file.
WinSDE also automatically creates some states in specific phases of the development process. When you want to change the state, you can use Change Version State function.
The function Find Versioned Files makes it possible to search for file versions that match different criteria, as shown in the figure:
After the search it is possible to do some actions on the files, select the file and an action from the menus, or just right-click when you have selected the file.
Working With VersionWorks Outside SDE projects
If you want to manage several versions of files in any directory, which is not connected to any SDE project or system, you can use VersionWorks. From VersionWorks you can create an RCS directory and use it for version management. The same principle is valid for a directory tree. In a similar way, you can use Change Requests (with some limitations). In that case you must create a CR directory with its RCS library, and then you must create a CR-description file - confdef.def. All this you can manage from VersionWorks.