2012-10-03 13 views
3

我有一個ASP.NET項目,包含我自己的開發,分段和生產服務器。爲ASP.NET項目執行代碼移動的最佳實踐和工具

在所有的環境中,我都是手動移動代碼。因此,每次我必須推動變更時,我執行以下步驟:

  1. 從SVN獲取我的最新代碼。
  2. 使用諸如Beyond Compare之類的工具在較低和待升級環境之間合併代碼。
  3. 然後我將相應的ASPX和DLL文件以及任何存儲過程或表格數據手動移動到Production。

這是一個非常耗時的過程,我想獲得一些自動化的代碼移動方法。

有沒有一種方法可以將代碼從SVN移動到使用某些自動化工具或自動化軟件包的服務器上。

我使用ASP.NET 2.0與IIS 7和SQL Server 2008

回答

1
  1. 的MSBuild可以幫助你獲得從SVN的代碼,並建立它。您將需要創建簡單的批處理文件來運行它,或者您可以使用Cruisecontrol。

  2. 應該避免手動合併。如果您使用的是VS2010,則可以使用xsd將配置文件轉換爲生產版本

  3. 我不是存儲過程的忠實粉絲。如果您可以使用代碼封裝存儲的特效代碼,則出現錯誤的空間較小,並且回滾更改等,以及使部署更容易。數據庫模式更新應該在批處理文件中完成並自動應用。

  4. 有多種部署方式:webdeploy或msi文件。這取決於部署過程中需要多少工作

1

我想看看continuous integration。我最喜歡的,因爲它最簡單的使用是TeamCity

你仍然需要使用MSBuild做一些工作。

您可以將構建版本設置爲從網站按下按鈕。 當您檢入svn時推送代碼。 幾乎任何你能想到的方式。

我強烈建議您使用它來始終構建您的代碼並在每個SVN上運行單元測試。它不必部署,但TeamCity將爲您提供有關解決方案狀態的持續反饋。