發表文章

目前顯示的是 10月, 2020的文章

Subversion (SVN) 淺談

SVN簡介 SVN = 版本控制 + 備份伺服器 簡單的說,您可以把SVN當成您的備份伺服器,更好的是,他可以幫您記住每次上傳到這個伺服器的檔案內容。並且自動的賦予每次的變更一個版本。 TortoiseSVN--SVN簡介 --- 基本功能操作 Checkout - 把主機上的檔案或是程式碼取出存到用戶端的電腦裡,建立連動 Update - 更新,下載最新的版本到用戶電腦裡,若資料跟主機一樣新,就不會異動 Commit - 將用戶端的變更上傳至主機 Branch/tag - 用於平行開發分支版本或是將版本定版 Switch - 切換版本 Subversion(SVN)概念與工具介紹 SVN中檢出(check out)、匯出(export)、匯入(import)、add(新增)、update(更新)的區別 --- SVN應用 SVN Repository 基本結構 trunk - 主開發目錄 (僅合併不開發) branches - 分支開發目錄 tags - 可用穩定版本 (唯讀) SVN 初始化流程 創建 repository 加入成員、設定權限 建立基本結構目錄 trunk, branches, tags 設定 properties SVN 開發流程 在開發分支(branch)上持續開發 階段開發結束將branch進度合併至trunk 將trunk發布為穩定版本(tag) 建立新的開發分支或原開發分支繼續開發 持續1~4階段循環至專案結束 SVN 使用案例 - 團隊工具庫 (以UE4為例) TeamTools trunk branches 4.25-dev 4.26-dev tags 4.25-release-1.0.20 4.25-release-1.1.35 4.26-release-2.0.52 // 由於開發專案時,工具也處於持續開發中的狀態,所以在專案使用以外部連結(external)方式指定專案開發版本(4.x-dev),除非必要(在舊版本重大除錯更新),否則新功能僅在最新開發版本(4.latest)上追加。 // 避免專案開發中需要隨著工具版本更新而重設工具版控路徑的麻煩,dev版本合併trunk後不刪除,唯有公開發布團隊外使用時才需建立tag穩定版本 SVN 使用案例 - 專案開發 (以UE4為例) MyProject trunk branches