clearexport_ssafe and clearimport allow you to copy SourceSafe files to a VOB. You can copy a single file, multiple files, or an entire project tree.
Before using clearexport_ssafe, run analyze.exe. Resolve any problems that analyze.exe detects before proceeding with the export operation.
During the export stage, you invoke clearexport_ssafe while connected to any SourceSafe project. clearexport_ssafe creates a datafile (by default, cvt_data), and places in it the descriptions of elements and versions.
In the import stage, you invoke clearimport on the datafile. clearimport reads the descriptions in the datafile and imports the information into the VOB.
clearexport_ssafe converts each SourceSafe label into a ClearCase version label. clearexport_ssafe creates separate elements for each SourceSafe file. You can specify a translation file to control naming of labels, enforcing consistency over multiple invocations of the command. You can use the –V option to preserve SourceSafe version numbers as attributes of the corresponding ClearCase versions.
For clearexport_ssafe to work, the SourceSafe command-line executable ss.exe must be in your PATH environment variable. ss.exe must work without prompting you for a user name and password. To prevent prompting, you may need to use a SourceSafe user name that matches your domain login user name, or you may need to set the SSUSER environment variable and set the corresponding password to blank, or no password.
During import, clearimport invokes a shell to extract data from the datafile. clearimport can handle some, but not all, characters that are special to shells. The import fails for any file name that includes any of these characters:
Before running clearexport_ssafe, rename any file whose name contains these characters.
Renaming SourceSafe labels can introduce inconsistencies over multiple runs of clearexport_ssafe. The same label may be renamed during processing of some SourceSafe files, but remain unchanged during processing of other files. You can enforce consistency by using the same translation file in multiple invocations of clearexport_ssafe. If you name such a file (using the –T option), clearexport_ssafe uses it as follows:
The first time you use clearexport_ssafe, use –T to create a new translation file. On subsequent invocations of clearexport_ssafe, use –T again and specify the same translation file, for consistent name translation.
SourceSafe lets you assign the NO DELTAS attribute to elements, which directs SourceSafe to keep only the current version of the element. SourceSafe keeps a history of all versions, but the contents of only the current version. clearexport_ssafe creates an empty version for each of the previous versions of the element and a version with contents for the current version. Because ClearCase does not include a feature comparable to NODELTAS, when you create new versions of the element, the previous versions and their contents are stored. You can, however, use the rmver –data command to remove a version's contents.
clearexport_ssafe determines whether to process a SourceSafe file by using the last-modified date/time of the file. If this date/time is before the date-time you specified with –s, clearexport_ssafe does not process any of the versions of the file. If the date/time is after the date-time you specified, clearexport_ssafe processes the following versions:
To export only important versions, use –I now. The time is specified in one of the following formats:
date.time | date | time | now where:
Specify the time in 24-hour format, relative to the local time zone. If you omit the time, the default value is 00:00:00. If you omit the date, the default value is today. If you omit the century, year, or a specific date, the most recent one is used. Specify UTC if you want to resolve the time to the same moment in time regardless of time zone. Use the plus (+) or minus (-) operator to specify a positive or negative offset to the UTC time. If you specify UTC without hour or minute offsets, the default is Greenwich Mean Time (GMT). (Dates before January 1, 1970 Universal Coordinated Time (UTC) are invalid.)
If you use the –s option with this option, clearimport attaches SSAFE_VERSION attributes only to versions created after the date-time you specified.
Each attribute requires about 1 KB of storage in the VOB database.
If branch type target-branch does not already exist in the target VOB, clearimport creates it. If an existing element already has a branch of this type, the new version extends this branch; otherwise, clearimport sprouts target-branch from version \main\LATEST (\main\0 for new elements). To specify another version from which the branch should sprout, use the –v option.
Each source-name must be a SourceSafe file or project in the SourceSafe current project, or a wildcard as described in wildcards_ccase. clearexport_ssafe processes files and subprojects only from your SourceSafe current project. You cannot use source-name to specify a pathname that is not in your SourceSafe current project.