Our project is carried out in the SourceSafe database. We have an automatic assembly that runs every night on a special assembly machine. As part of our build process, we get the source and related data for installation from SourceSafe. This can take quite a while and forms the bulk of the build process (which is mostly dominated by the creation of installation files).
We are currently using the command line tool ss.exeto interact with SourceSafe. The commands we use are designed to recursively obtain source and project data, check version files, register updated version files, and mark them. However, I know that SourceSafe also supports the object model.
ss.exe
, , , , , .
, , , , . , , .
, , "getlatest" , , VSS ( , WAN ).
, SCM ( SVN - codeplex , , , SVS SVN)
Team Foundation Server. VSS, CruiseControl.Net(caveat: , CC, ).
, , VSS. TFS 1000 , , 6 Ethernet-.
: -, , +, , , , VSS, ( + ). VSS.
VSS . SourceSafe, , , , , , . .
VSS .
, , , VSS ~ 12 . , . , VSS .
, .
. SourceOffSite www.sourcegear.com.
, , , - - , "" , VSS - . .
, , VSS , . VSS ahev, ... , .
, ?!
, , , 2 ....; -)
? ?
, ( " get" , ), , . , .
ClearCase on one client ran like a complete dog because client backend scripts did this. Each command line call created a connection, authenticated the user, received the file, and closed the connection. Tens of thousands of times. Oh, the dangers of the command line interface and a bit of Perl.
With the API, you are most likely to have a proper session between actions.