【发布时间】:2011-03-04 12:00:27
【问题描述】:
我在一家机构工作,该机构多年来一直与另一家机构一起负责维护客户的 .net 3.5 网站。客户几乎临时将工作外包给这两个机构。
该站点相当古老,并且具有与之匹配的结构和部署过程。该站点设置为开发人员拥有站点的本地副本。有一个登台环境,客户反馈和批准发生在此环境中,然后是现场环境。在许多情况下,一个机构的工作将在暂存环境中等待批准,而另一个机构的更改需要经过暂存、批准和部署才能生效,而不影响原始更改。大多数时候我们都可以侥幸解决,但这远非理想,因为并非所有冲突都可以解决。
直到最近,我们仍然使用 Sourcesafe,但已经转移到 Subversion,并且遇到了更多工作被覆盖的情况。这显然不是颠覆的错误,而是在 Sourcesafe 中锁定项目和文件可以很好地向两个机构的开发人员表明有人正在处理该项目或文件。之前的过程是您从 sourcesafe 签出一个文件并一直签出,直到更改生效(承认这是一个垃圾过程,因此希望摆脱 sourcesafe 和这样的模型)
问题在于,即使我们知道我们现在的做法很糟糕,但对于如何重组整个网站和部署流程以使其“更好”,我还是有点茫然。我们思考过的一些想法是:
- 在 subversion 中分离 dev、test 和 live 分支,因此我们需要在部署之前提交并构建适当的分支(不太确定如何实现)
- 两个机构的单一存储库,但每个机构都有一个单独的暂存环境。然后,暂存环境可以反映分配给每个机构的更改
- 每个分支的临时站点的单独实例
非常感谢来自 SO 社区的后续步骤或类似情况和解决方案示例的任何建议!
谢谢
乔尔
【问题讨论】:
标签: asp.net deployment svn