簡體   English   中英

使用網站的SVN開發和部署管理

[英]Dev and deploy management with SVN of a Web Site

一個網站的網絡解決方案,由5個項目組成,並且有少數(少於10個)開發人員致力於該解決方案。 我們幾乎每天都部署。 問題是,如何設置SVN存儲庫以支持這種情況(每日部署),還提到並不是每個提交的文件都應投入生產,在部署之前需要進行質量檢查。

免費試用TeamCity (CI工具)以獲取少量CI。 這對您來說可能比CruiseControl.Net更好,因為CCNET的配置非常繁重,因為它們都是通過XML完成的。 TeamCity使用向導創建腳本來管理版本

如果您需要有關CI的其他幫助,請告訴我它是我的福音。

您要執行的操作通常稱為持續集成 (CI)。

雖然您可以使用Subversion做到這一點,但它可能並不是正確的工具。

有特殊的CI軟件,它將使您輕松地自動化必要的任務(從版本控制中檢出,編譯/構建,運行自動測試,部署等)。 一個示例是CruiseControl.NET

至於“不是每個提交的文件都應該投入生產”,常見的解決方案是擁有一個特殊的“發布”分支,並進行部署。 僅將經過測試的代碼合並到那里(或者使中繼線始終保持穩定,否則為同一模型)。 當然,您也可以(更好的是:另外)在自動部署之前進行測試,並且僅在所有測試通過后才進行部署。

使用發布分支

實際上,這意味着人們在生成代碼時會簽入代碼。 有時此代碼將起作用,有時則不起作用。 當發布時間臨近時,將在Subversion中創建一個“發布分支”。 這樣,該發行分支實際上就是分支時源的凍結快照。 現在,可以使用此分支來編譯和部署應用程序,然后可以對其進行測試。

沒有新代碼簽入分支(但簽入可以在其他地方繼續進行)。 僅當在分支中檢測到錯誤時,分支中才會進行檢入以對其進行修復。 這一直持續到分支通過所有測試為止。 然后可以將該分支作為軟件的新版本發布; 之后,僅當需要修補發布的版本時才使用該分支。

當然,檢查到分支中的所有錯誤修正也需要放入主干中(通過合並分支->主干(Subversion為此提供了特殊支持),或通過在主干中適當地重新實現此修補程序)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM