2011-10-24 41 views
0

我目前正嘗試使用MS Visual Source Safe通過命令行設置自動添加/檢出/檢查腳本。在線文檔...缺乏......我希望別人曾經嘗試過這樣做。Visual Source Safe自動提交

在進一步探討之前,我深知VSS還有其他更好的選擇,所以請不要給「使用SVN」作爲答案。

我已經得到的文件是我們的數據庫模式的腳本版本,看起來像這樣的回購:

$/PROJECT_NAME/DBScripts /服務器/數據庫/ object_types,其中object_types是表,StoredProcedures,等

我試圖做到以下幾點:

1-腳本的所有數據庫對象的文件。這部分完成並正常工作。
2-將所有新文件添加到回購。
3-提交所有已更改的文件。確保文件不被檢出或只讀。編號2:

再次刪除舊代碼。包含下面的當前代碼。添加工作正常,但checkout命令不適用於本地更改的任何文件。

在這種情況下,如果我要修改存儲過程A,將其編譯爲文件,然後嘗試運行下面的批處理命令,所有procs BUT A都將被檢出。

我已經包括了2個checkout命令的例子。兩者都不工作...

set PATH=%path%;C:\Program Files\Microsoft Visual SourceSafe 
set SSDIR=repo_path 

cd DBScripts/server/database/StoredProcedures 
ss cp $/project/DBScripts/server/database/StoredProcedures 

for %%F in (*.*) do ss add %%~nF%%~xF -C- -I-N -K- -W 
for %%F in (*.*) do ss checkout $/project/DBScripts/server/database/StoredProcedures/%%~nF%%~xF -C- -G- -M- -L+ 
ss checkout $/project/DBScripts/server/database/StoredProcedures *.* -C- -G- -M- -L+ -Vltemp 
for %%F in (*.*) do ss checkin %%~nF%%~xF -C- -K- -P $/project/DBScripts/server/database/StoredProcedures -W 

cd ../../../.. 

注意:SourceSafe的「-R」命令不一致。我寧願手動遍歷所有子文件夾,然後執行「for %% F in()」命令。

+0

我在查找解決方案時閱讀的一些主題表明,SourceSafe可能有問題,並且可能需要升級。真的希望在這裏不是這種情況... –

+0

請您介紹一下「哪個絕對不行」?你有任何錯誤信息?或者這些命令不符合您的要求? – Windy

+0

雖然我很欣賞這個迴應,但是我通過代碼的各種迭代獲得的錯誤並沒有真正的用處 - 我不想糾正我的代碼中的一些錯誤。相反,我只需要幫助構建適當的ss.exe命令。此外,這可能應該是一個評論,而不是一個答案。 –

回答

1

可能的原因是checkin命令在先前的add/checkout命令完成之前執行。嘗試在checkout命令之前檢查add是否成功,並在checkin命令之前檢查checkout是否成功。

相關問題