From time to time you find little shops still living in the dark ages as far as version control is concerned.

Hopefully this summary of Source Safe commands makes getting rid of it a little easier.

Formatted for Cygwin bash.

Environment

SS="/c/Program Files/Microsoft Visual Studio/VSS/win32/SS.EXE"

Input

  • $VSS_PROJ : VSS Project path
  • $USER : VSS username

Get

Latest

"$SS" Get "$VSS_PROJ" "-Vl$LABEL" "-Y$USER", -R -I-

Label

"$SS" Get "$VSS_PROJ" "-Y$USER", -R -I-

Date

  • DATE is "DD/MM/YYYY"

"$SS" Get "$VSS_PROJ" "-Vd$DATE" "-Y$USER", -R -I-

Example Script

#!/bin/sh
# Get project from VSS
#
# Usage: vss-get.sh PROJECT [LABEL]
#
#  e.g. vss-get.sh $/Path/Project 0.1
#
VSS_PROJ="$1"
LABEL="$2"
SS="/c/Program Files/Microsoft Visual Studio/VSS/win32/SS.EXE"
#echo SSDIR=$SSDIR
#echo VSS\_PROJ=$VSS\_PROJ
#echo USER=$USER

if [ -z "$LABEL" ]
then
    # get latest
    #echo "$SS" Get "$VSS_PROJ" "-Y$USER", -R -I-
    "$SS" Get "$VSS_PROJ" "-Y$USER", -R -I-
else
    # get label
    #echo "$SS" Get "$VSS_PROJ" "-Vl$LABEL" "-Y$USER", -R -I-
    "$SS" Get "$VSS_PROJ" "-Vl$LABEL" "-Y$USER", -R -I-
fi