为ASP.NET项目执行代码移动的最佳实践和工具

时间:2012-10-03 06:05:44

标签: asp.net svn version-control

我有一个带有自己的开发,暂存和生产服务器的ASP.NET项目。

在所有环境中,我手动移动代码。因此,每次我必须推动更改时,我都会执行以下步骤:

  1. 从SVN获取我的最新代码。
  2. 使用Beyond Compare等工具合并低级和待升级环境之间的代码。
  3. 然后我将相应的ASPX和DLL文件以及任何存储过程或表数据手动移至Production。
  4. 这是一个非常耗时的过程,我想获得一些代码移动的自动化方法。

    有没有办法可以使用一些自动化工具或自动化软件包将代码从SVN移到我的服务器。

    我正在使用带有IIS 7和SQL Server 2008的ASP.NET 2.0。

2 个答案:

答案 0 :(得分:1)

  1. msbuild可以帮助您从svn获取代码并构建它。您需要创建简单的批处理文件来运行它,或者您也可以使用Cruisecontrol。

  2. 应避免手动合并。如果您使用的是VS2010,则可以使用xsd将配置文件转换为生产版本

  3. 我不是storageprocs的忠实粉丝。如果您可以使用代码封装存储过程,则可以减少错误和回滚更改等空间,并使部署更容易。数据库架构更新应在批处理文件中完成并自动应用。

  4. 有多种部署方式:webdeploy或msi文件。这取决于部署过程中需要多少工作

答案 1 :(得分:1)

我会调查continuous integration。我最喜欢的是因为它最简单易用TeamCity

你仍然需要在MSBuild上做一些工作。

您可以将构建设置为从站点推送按钮。 检查svn时,请按下代码。 几乎任何你能想到的方式。

我强烈建议您使用它来构建代码并在每个SVN上运行单元测试检查它。它不必部署,但TeamCity将为您提供有关解决方案状态的持续反馈。