command-linevcs-checkoutstarteam

StarTeam - checkout specific revision of renamed file using stcmd


Is it possible to obtain filename of the specific revision of the file?

The problem is when following command line is used, result is not someFile.txt, but it is otherFile.txt:

stcmd.exe co -nologo -pwdfile pwd.txt -p "user@server/project/folder" -vn 1 -rp out someFile.txt

The reason is: file otherFile.txt at some point was renamed to otherFile.txt, and history was not lost. Unfortunately, output of the stcmd.exe hist does not provide information, that file was renamed. This makes practically impossible to import correctly full history of the project into different VCS.


Solution

  • No, there isn't a way in stcmd to do it. You would end up needing to run the checkout in a bare directory and check to see what file was written. Even the output of the checkout will say the new filename, not the original before the rename.

    Exporting history to a different VCS would be nearly impossible using stcmd, anyway. Deletes, shares, moves, renames, and individual item/folder configuration changes would all be improperly reported unless you were checking every view configuration at individual seconds back to the view's creation time.

    Writing a StarTeam SDK app might provide better results, but that still runs into the same basic issues. You would be able to iterate through history of any file and see what the filename was for any individual revision without checking anything out, at least.

    Exporting real history from StarTeam is very hard.