Visual SourceSafe - Получить последнюю версию с помощью команд пакетного файла
Я пытаюсь написать командный файл, который будет автоматически получать последнюю версию только определенных папок из SourceSafe.
РАСПОЛОЖЕНИЕ ФАЙЛОВ:
SourceSafe установлен на моем диске C:
C: \ Program Files (x86) \ Microsoft Visual SourceSafe
Файлы users.txt и data, которые содержат um.dat, находятся в общей папке в сети:
// Сервер (я сопоставил эту папку на диске X: для удобства)
.BAT FILE:
@echo off
REM SET ENVIRONMENT VARIABLE TO LOCATION OF SS.EXE
PATH=%PATH%;C:\Program Files (x86)\Microsoft Visual SourceSafe
REM SET DIR TO THE DATA DIRECTORY I.E. LOCATION OF SRCSAFE.INI
SET SSDIR = X:
REM LOGIN DETAILS
SET SSUSER = Administrator
SET SSPWD = Password
REM SET THE CURRENT PROJECT
ss CP $/Development/Websites/MySite
REM GET LATEST FROM THESE FOLDERS (RECURSIVE)
ss Get $/App_Code -I -Y -R -W
ss Get $/App_Data -I -Y -R -W
ss Get $/Bin -I -Y -R -W
ss Get $/Images -I -Y -R -W
ss Get $/scripts -I -Y -R -W
ss Get $/styles -I -Y -R -W
pause
ПРОБЛЕМА:
Когда я запускаю файл, я получаю следующую ошибку:
Неверный путь DOS: C:\Program Files (x86)\Microsoft Visual SourceSafe\data\um.dat
Кажется, что эти файлы ищутся на моем диске C, когда он должен искать на диске X. Я попытался переместить файлы с проблемами (um.dat и users.txt) с диска X в это место на диске C. Пакетный файл будет запущен, но я не получу последнюю версию.
Если бы кто-то мог помочь мне понять это, я был бы очень благодарен!
2 ответа
Ты можешь попробовать
ss Get $/Development/Websites/MySite/App_Code -I -Y -R -W
вместо
ss Get $/App_Code -I -Y -R -W
Скорее всего, ваша проблема в том, что вы ставите пробелы вокруг =
когда вы делаете set
, Вы создаете переменную среды SSDIR =
, который не совпадает с SSDIR=
,
Вы можете увидеть это, выполнив в окне CMD следующее:
C:\> set HELLO = this
C:\> set HELLO=that
C:\> set HELLO
HELLO=that
HELLO = this
Оба существуют, так как имя переменной среды - все до равных, включая пробел перед равными.
Sourcesafe будет искать переменную среды под названием SSDIR
и это не то, что вы устанавливаете.
Попробуйте изменить соответствующие строки следующим образом:
REM SET DIR TO THE DATA DIRECTORY I.E. LOCATION OF SRCSAFE.INI
SET SSDIR=X:
REM LOGIN DETAILS
SET SSUSER=Administrator
SET SSPWD=Password