Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net Web应用程序构建和部署策略_Asp.net_Svn_Msbuild - Fatal编程技术网

Asp.net Web应用程序构建和部署策略

Asp.net Web应用程序构建和部署策略,asp.net,svn,msbuild,Asp.net,Svn,Msbuild,我们有一个web应用程序,偶尔会出现一个需要处理和修复的bug。我们使用subversion作为我们的代码存储库。我要讨论的是在什么时候创建一个新的分支或标记。我们认为,如果需要重建应用程序或MSI,那么我们将创建一个分支。在一些简单的情况下,比如打字错误,我们只需要分发有问题的.aspx页面 您的分支和构建策略有哪些 现在我们的这个样子。我们有一个类库和Web应用程序。我们进行更正,将更改的页面/DLL复制到MSI创建者(高级安装程序),然后重建MSI。我们正在讨论是否使用web部署项目/MS

我们有一个web应用程序,偶尔会出现一个需要处理和修复的bug。我们使用subversion作为我们的代码存储库。我要讨论的是在什么时候创建一个新的分支或标记。我们认为,如果需要重建应用程序或MSI,那么我们将创建一个分支。在一些简单的情况下,比如打字错误,我们只需要分发有问题的.aspx页面

您的分支和构建策略有哪些


现在我们的这个样子。我们有一个类库和Web应用程序。我们进行更正,将更改的页面/DLL复制到MSI创建者(高级安装程序),然后重建MSI。我们正在讨论是否使用web部署项目/MSbuild或类似的东西。我们需要它是可复制的、可靠的和简单的。

当您发布代码时,您会“标记”它。比如说,您将其标记为“ReleaseVersion_1.2.3.4”

“主干”将是你的主要分支。你在那里继续发展

如果有发布代码的客户出现bug,您可以从“标签”(“ReleaseVersion_1.2.3.4”)分支,并在那里进行热修复

然后,您很可能会将此修补程序中的代码合并回“主干”

这是最简单的方法

分支策略有很多选择


但是,如果您的代码修补程序是偶尔出现的,则此修补程序将起作用。

您是否有CI机器/环境?(CI=持续集成)目前,我们没有设置任何持续集成服务器。我在过去使用过CC.net,大约4-5年前,结果好坏参半。再试试CC.net吧。带着这个警告。在msbuild定义文件(.proj)中写入99%的生成逻辑,使用CC.NET从svn下载代码,然后使用CC.NET调用“msbuild.exe MyMsBuild.proj”……值得为此付出努力。通过将99%的逻辑放在proj文件中,如果你离开CC.NET,你将来会安全的。这将是我们项目的“只读”版本。然后我们将创建一个维护分支。这将是修复bug的地方。我们是一个三人的小商店,不做太多的合并或修补,因为它只是成为一个头痛的家伙……“标记”您的代码就像……2次鼠标点击。。。。。。。仅仅因为你很小,而且只是偶尔合并……这并不意味着跳过一些基本步骤。制作一个“标签”是非常简单的…而且你有一个时间来做它。如果你不使用它,它不会伤害任何东西。