如果你直接在VS2013裏將方案加入遠端VisualSVN作版控,它只會將目前Solution下的可見專案文件寫入遠端版控,然而我們大部分專案根目錄卻是長這樣子的:
+ MyRootDir/ (root)
App_Doc/ (放置專案文件)
App_Deploy (編譯佈署輸出目錄)
App_MainProject1/ (主專案1)
App_Library/ (共用函式庫)
App_OtherProject1/ (其他專案1)
App_OtherProject2/
MainProject1.sln
OtherProject1.sln
OtherProject2.sln
同個專案下,可能會有很多方案Solution檔,控制著不同的專案項目組合,若異動了非某專案下的文件,可能遠端主機就沒法探測到異動,因此我們不能讓SVN綁著方案,而該綁定最上游的根目錄。
設定步驟如下:
- 確認系統已安裝VS2013, TortoiseSVN, VisualSVN程式。
- 在遠端主機建置空的Repository(倉庫),設置好存取用戶權限。
- 將MyRootDir/目錄匯入該遠端Respository裏。
- 打開VS2013,執行選單上「VISUALSVN\Get Solution from Subversion」,將遠端的Respository儲存到欲放置的路徑上。
- 完整下載後,它會判讀該目錄下的所有*.sln,就可選擇任一個來開啟。
- 在系統檔案管理員(非VS2013)下新增任一文字檔(ImportedNewFile.txt),但在VS2013的專案檔下去作SVN Commit,即可抓到上層的所有異動文件。這是因為VisualSVN的「Set working copy root」是設定在root根目錄層。
- 如此一來,我們綁定SVN在根目錄裏的變動,而非目錄下單一*.sln方案檔了。
No comments:
Post a Comment