3

我正在建立一个完整的网络开发环境。目前,有两名开发人员,一名专注于后端编程(C#、.NET),另一名专注于前端开发(HTML、CSS、XSLT)。

每个人都安装了 MS Visual Studio 2008 并通过 Visual Source Safe 2005 共享源代码。他们既签出文件又在本地开发。

我已经设置了一个测试服务器,它是合并和测试代码最终应该结束的计划,并且该服务器应该始终是“正确”版本。

3 个安装中的每一个都共享相同的数据库。

我认为这个设置应该有点规模,因为我正在为更多的开发人员做准备,但是我们在文件同步和快速更改的轻松访问方面存在很多问题。通常我们需要非常快速地更改一些布局和设计并最终手动将文件复制到测试服务器(我不希望网络服务器上有任何 .NET/C# 代码文件),并且站点失败:-(

我们使用标准的 CMS 来构建我们所有的前端工作,如果它包含在源代码安全中,它确实会减慢速度。

我希望我们所有的前端工作都与我们的后端代码完全分开,这样很容易进行更改。

例如。我们希望对设计进行一些更改并将其快速部署到我们的生产环境中,而无需考虑 .NET 代码。

有什么我遗漏的,或者设置 Web 开发环境的最佳实践是什么?

期待一些帮助/经验:-)

/托马斯

4

3 回答 3

5

您可能应该研究一个功能更强大的版本控制系统。SVN 具有强大的工具支持(包括用于 VS2008 集成的AnkhSVNVisualSVN),而 Mercurial、Git 或 Bazaar 等分布式版本控制系统将为您提供更多选择,并以更基本的工具支持为代价。

您可能需要简单的分支,如果您可以轻松地将它们部署到生产环境(即运行“svn up”),那么使用版本控制系统管理相关资源会变得更加容易。

于 2009-01-22T19:16:37.723 回答
0

我无法为您提供有关如何处理 CMS 内容的信息,但我已经设置或使用了几个构建服务器。

在许多项目中使用 Visual Source Safe 并在一些项目中使用 Team Foundation Server,如果可以的话,我会远离它。

我们最近的构建服务器由 Nant 脚本组成,这些脚本从 Subversion 存储库中检查源代码。构建本身由 MSBuild 完成。然后将构建的结果复制到阶段和生产中。

应该有一种简单的方法将数据库更改从开发转移到阶段和生产。我们有一个工具 ( http://www.codeplex.com/ScriptDB ) 为开发数据库编写脚本。结果被检入 Subversion。很容易看到 Subversion 日志中发生了什么变化。

于 2009-01-22T20:49:41.153 回答
0

3 个安装中的每一个都共享相同的数据库。

这似乎是一个糟糕的决定。如果 dev1、dev2 和 test 都使用同一个数据库,那么 dev1 如何在不干扰 dev2 和 test 的情况下尝试更改架构(假设尚未签入使用实验架构的代码)。

此外,数据库成为单点故障,因此如果有人不小心删除/截断了关键表,那么所有工作都会停止。

理想情况下,每个环境都应该有自己的数据库。我想如果您使用的是像 Oracle 这样的非免费数据库,那么您可能无法为每个环境提供自己的服务器,但至少每个环境都应该有自己的架构。

于 2010-04-29T22:05:15.913 回答