Microsoft Visual SourceSafe 任務使用者手冊

作者


目錄


簡介

這些任務提供一個介面,用於Microsoft Visual SourceSafe SCM。 org.apache.tools.ant.taskdefs.optional.vss 套件包含一個簡單的架構,用於支援 VSS 功能,以及一些 Apache Ant 任務,用於封裝常用的 VSS 指令。雖然可以在桌面上使用這些指令,但它們主要用於自動化建置系統。

如果您在執行這些指令時收到 CreateProcess error=2,表示找不到 ss.exe。請查看您是否可以從命令列執行它,您可能需要變更您的路徑,或設定 ssdir 屬性。

任務

任務說明
vssget 擷取指定的 VSS 檔案副本。
vsslabel 將標籤指定給檔案或專案的指定版本或目前版本。
vsshistory 顯示 VSS 中檔案或專案的歷程記錄。
vsscheckin 使用已簽出的檔案所做的變更更新 VSS,並解除鎖定 VSS 主控副本。
vsscheckout 將檔案從目前專案複製到目前資料夾,以進行編輯。
vssadd 將新檔案新增至 VSS 檔案庫
vsscp 變更 VSS 中使用的目前專案
vsscreate 在 VSS 中建立專案。

任務說明

VssGet

說明

執行 GET 指令至 Microsoft Visual SourceSafe 的任務。

如果您從版本、日期和標籤指定兩個或更多屬性,只會使用一個,順序為版本、日期、標籤。

參數

屬性 必要
vsspath SourceSafe 路徑,用於指定您要執行動作的專案/檔案。
login 使用者名稱[,密碼]—存取 VSS 所需的使用者名稱和密碼。請注意,您可能需要同時指定這兩項(如果您有密碼),如果遺漏密碼,Ant/VSS 會暫停,而 VSS 不會接受沒有密碼的登入。
localpath 覆寫工作目錄並取得指定路徑
ssdir ss.exe 所在的目錄。 否;預設預期在 PATH
serverPath srcsafe.ini 所在的目錄。
writable true|false 否;預設 false
recursive true|false。不過請注意,在 SourceSafe UI 中,有一個設定可透過 工具/選項/一般標籤 存取,稱為 遞迴作用於專案。如果勾選此設定,則 recursive 屬性實際上會被忽略,而且取得永遠會遞迴進行 否;預設 false
version 要取得的版本號碼 否;只能使用其中一個
date 要取得的時間戳記
label 要取得的標籤
quiet 抑制輸出 否;預設為 off
autoresponse 要如何回應(設定 -I 選項)。預設使用 -I-;值 YN 會附加到此選項。
writablefiles 當本機檔案可寫入時的行為。有效的選項為:replaceskipfailskip 表示 failonerror=false 否;預設為 fail
failonerror 如果 ss.exe 以回傳碼 100 退出,則停止建置程序 否;預設為 true
filetimestamp 設定本機檔案的時間戳記行為。有效的選項為 currentmodifiedupdated 否;預設為 current

請注意,只能指定 version、date 或 label 其中一個

範例

使用使用者名稱 me 和密碼 mypassword,對 VSS 專案 $/source/myproject 執行取得。這會遞迴取得標籤為 Release1 的檔案,並將其寫入本機目錄 C:\mysrc\myproject。本機檔案將可寫入。

<vssget localPath="C:\mysrc\myproject"
        recursive="true"
        label="Release1"
        login="me,mypassword"
        vsspath="$/source/aProject"
        writable="true"/>

VssLabel

說明

執行標籤命令至 Microsoft Visual SourceSafe 的工作。

將標籤指定給檔案或專案的指定版本或目前版本。

參數

屬性 必要
vsspath SourceSafe 路徑,用於指定您要執行動作的專案/檔案。
login 使用者名稱[,密碼]—存取 VSS 所需的使用者名稱和密碼。請注意,您可能需要同時指定這兩項(如果您有密碼),如果遺漏密碼,Ant/VSS 會暫停,而 VSS 不會接受沒有密碼的登入。
ssdir ss.exe 所在的目錄。 否;預設預期在 PATH
serverPath srcsafe.ini 所在的目錄。
label 要套用至層級結構的標籤
version 要標籤的現有檔案或專案版本。預設會標籤目前的版本。
comment 要使用於此標籤的註解。為空或 - 表示沒有註解。
autoresponse 要如何回應(設定 -I 選項)。預設使用 -I-;值 YN 會附加到此選項。
failonerror 如果 ss.exe 以回傳碼 100 退出,則停止建置程序。 否;預設為 true

範例

使用使用者名稱 me 和密碼 mypassword,將 VSS 專案 $/source/aProject 的目前版本標記為標記 Release1

<vsslabel vsspath="$/source/aProject"
          login="me,mypassword"
          label="Release1"/>

將 VSS 檔案 $/source/aProject/myfile.txt 的版本 4 標記為標記 1.03.004。如果此版本已具有標記,則作業(和建置)將會失敗。

<vsslabel vsspath="$/source/aProject/myfile.txt"
          version="4"
          label="1.03.004"/>

VssHistory

說明

執行 HISTORY 指令至 Microsoft Visual SourceSafe 的工作。

參數

屬性 必要
vsspath SourceSafe 路徑,用於指定您要執行動作的專案/檔案。
login 使用者名稱[,密碼]—存取 VSS 所需的使用者名稱和密碼。請注意,您可能需要同時指定這兩項(如果您有密碼),如果遺漏密碼,Ant/VSS 會暫停,而 VSS 不會接受沒有密碼的登入。
ssdir ss.exe 所在的目錄。 否;預設預期在 PATH
serverPath srcsafe.ini 所在的目錄。
fromDate 比較開始日期 請參閱下方
toDate 比較結束日期 請參閱下方
dateFormat fromDatetoDate 中的日期格式。在使用 numdays 屬性計算日期時使用。此字串使用 SimpleDateFormat 的格式化規則。 否;預設為 DateFormat.SHORT
fromLabel 比較開始標記
toLabel 比較開始標記
numdays 比較天數。 請參閱下方
output 撰寫 diff 的檔案。
recursive true|false
style briefcodediffdefaultnofile 否;預設為 default
user 命名我們想要查看其變更的使用者
failonerror 如果 ss.exe 以回傳碼 100 退出,則停止建置程序 否;預設為 true

指定時間範圍

有不同的方式可以指定您想要評估的時間範圍

範例

顯示 Release1Release2 之間的所有變更。

<vsshistory vsspath="$/myProject" recursive="true"
            fromLabel="Release1"
            toLabel="Release2"/>

顯示 2001 年 1 月 1 日到 2001 年 3 月 31 日之間的所有變更(在德國,必須根據您的地區設定指定日期)。

<vsshistory vsspath="$/myProject" recursive="true"
            fromDate="01.01.2001"
            toDate="31.03.2001"/>

顯示過去兩週的所有變更。

<tstamp>
  <format property="to.tstamp" pattern="M-d-yy;h:mma"/>
</tstamp>

<vsshistory vsspath="$/myProject" recursive="true"
            numDays="-14"
            dateFormat="M-d-yy;h:mma"
            toDate="${to.tstamp}"/>

VssCheckin

說明

執行 CHECKIN 指令至 Microsoft Visual SourceSafe 的工作。

參數

屬性 必要
vsspath SourceSafe 路徑,用於指定您要執行動作的專案/檔案。
login 使用者名稱[,密碼]—存取 VSS 所需的使用者名稱和密碼。請注意,您可能需要同時指定這兩項(如果您有密碼),如果遺漏密碼,Ant/VSS 會暫停,而 VSS 不會接受沒有密碼的登入。
localpath 覆寫工作目錄並取得指定路徑
ssdir ss.exe 所在的目錄。 否;預設預期在 PATH
serverPath srcsafe.ini 所在的目錄。
writable true|false
recursive true|false
comment 用於已簽入檔案的註解。
autoresponse YN 或空白。指定如何回覆 VSS 的問題。
failonerror 如果 ss.exe 以回傳碼 100 退出,則停止建置程序。 否;預設為 true

範例

使用本機目錄 D:\build,簽入專案 $/test 中名為 test* 的檔案。

<vsscheckin vsspath="$/test/test*"
            localpath="D:\build\"
            comment="Modified by automatic build"/>

VssCheckout

說明

執行 CHECKOUT 指令至 Microsoft Visual SourceSafe 的工作。

如果您從 versiondatelabel 指定兩個或更多屬性,則只會使用一個屬性,順序為 versiondatelabel

參數

屬性 必要
vsspath SourceSafe 路徑,用於指定您要執行動作的專案/檔案。
login 使用者名稱[,密碼]—存取 VSS 所需的使用者名稱和密碼。請注意,您可能需要同時指定這兩項(如果您有密碼),如果遺漏密碼,Ant/VSS 會暫停,而 VSS 不會接受沒有密碼的登入。
localpath 覆寫工作目錄並取得指定路徑
ssdir ss.exe 所在的目錄。 否;預設預期在 PATH
serverPath srcsafe.ini 所在的目錄。
writable true|false
recursive true|false
version 要取得的版本號碼 否;只能使用其中一個
date 要取得的時間戳記
label 要取得的標籤
writablefiles 當本機檔案可寫入時的行為。有效的選項為:replaceskipfailskip 表示 failonerror=false 否;預設為 fail
failonerror 如果 ss.exe 以回傳碼 100 退出,則停止建置程序。 否;預設為 true
filetimestamp 設定本機檔案的時間戳記行為。有效的選項為 currentmodifiedupdated 否;預設為 current
getlocalcopy 設定行為以擷取檔案的本機副本。 否;預設為 true

範例

遞迴簽出專案 $/test 至目錄 D:\build

<vsscheckout vsspath="$/test"
             localpath="D:\build"
             recursive="true"
             login="me,mypass"/>

VssAdd

說明

執行 ADD 指令至 Microsoft Visual SourceSafe 的工作。

參數

屬性 必要
localpath 指定要新增至 VSS 的本機檔案
login 使用者名稱[,密碼]—存取 VSS 所需的使用者名稱和密碼。請注意,您可能需要同時指定這兩項(如果您有密碼),如果遺漏密碼,Ant/VSS 會暫停,而 VSS 不會接受沒有密碼的登入。
ssdir ss.exe 所在的目錄。 否;預設預期在 PATH
serverPath srcsafe.ini 所在的目錄。
writable true|false
recursive true|false
comment 用於已簽入檔案的註解。
autoresponse YN 或空白。指定如何回覆 VSS 的問題。
failonerror 如果 ss.exe 以回傳碼 100 退出,則停止建置程序。 否;預設為 true

範例

將名為 build.00012.zip 的檔案新增到專案目前的工作目錄 (請參閱 vsscp)。

<vssadd localpath="D:\build\build.00012.zip"
        comment="Added by automatic build"/>

VssCp

說明

執行 CP (變更專案) 指令至 Microsoft Visual SourceSafe 的工作。

此工作通常會在 VssAdd 之前使用,以設定目標專案

參數

屬性 必要
vsspath SourceSafe 路徑,指定您希望建立為目前專案的專案。
login 使用者名稱[,密碼]—存取 VSS 所需的使用者名稱和密碼。請注意,您可能需要同時指定這兩項(如果您有密碼),如果遺漏密碼,Ant/VSS 會暫停,而 VSS 不會接受沒有密碼的登入。
ssdir ss.exe 所在的目錄。 否;預設預期在 PATH
serverPath srcsafe.ini 所在的目錄。
failonerror 如果 ss.exe 以回傳碼 100 退出,則停止建置程序。 否;預設為 true

範例

將目前的 VSS 專案設定為 $/Projects/ant

<vsscp vsspath="$/Projects/ant"/>

VssCreate

說明

執行 CREATE 指令至 Microsoft Visual Source Safe 的工作。

在 VSS 中建立新的專案。

參數

屬性 必要
login 使用者名稱、密碼
vsspath 要建立的專案的 SourceSafe 路徑
ssdir ss.exe 所在的目錄。 否;預設預期在 PATH
quiet 抑制輸出 否;預設為 off
failOnError 如果在建立專案時發生錯誤,則會失敗。 否;預設為 true
autoresponse 要如何回應(設定 -I 選項)。預設使用 -I-;值 YN 會附加到此選項。
comment 要使用於此標籤的註解。為空或 - 表示沒有註解。

範例

建立 VSS 專案 $/existingProject/newProject

<vsscreate vsspath="$/existingProject/newProject"/>