我正在建立一个完整的web开发环境。目前,有两个开发人员,一个致力于后端编程(C#,.NET),另一个致力于前端开发(HTML,XSLT)。
每个版本都安装了MS Visual Studio2008,并通过Visual source Safe 2005共享源代码。它们都检出文件并在本地进行开发。
我已经设置了一个测试服务器,它的计划是合并和测试的代码最终应该结束,并且该服务器应该始终是“正确”的版本。
3个安装中的每一个都共享相同的数据库。
我认为这个设置应该有一定的伸缩性,因为我正在为更多的开发人员做准备,但我们在文件同步和快速更改的便捷访问方面有相当多的问题。通常,我们需要非常快地更改一些布局和设计,并最终手动将文件复制到测试服务器(我不希望we服务器上有任何.NET/C#代码文件),而站点会失败:-(
我们使用标准的CMS来构建我们所有的前端工作,如果它包含在源代码安全中,那么它真的会减慢速度。
我希望我们所有的前端工作都与我们的后端代码完全分离,这样就很容易进行更改。
例如:我们希望对设计进行一些更改,并将其快速部署到我们的生产环境中,而不用考虑.NET代码。
我有没有遗漏什么,或者设置web开发环境的最佳实践是什么?
期待一些帮助/经验:-)
/Thomas
发布于 2009-01-22 19:16:38
您可能应该考虑一个功能更强大的版本控制系统。SVN有很好的工具支持(包括用于VS2008集成的AnkhSVN和VisualSVN ),而且像Mercurial、Git或Bazaar这样的分布式版本控制系统将为您提供更多的选项和更基本的工具支持的价格。
您可能需要简单的分支,如果您可以轻松地将它们部署到生产环境中(即运行"svn up"),那么使用版本控制系统管理相关资源将变得更加容易。
发布于 2009-01-22 20:49:41
我不能帮助你如何处理CMS内容的信息,但我已经设置或使用了几个构建的服务器。
我在很多项目中使用过Visual Source Safe,在一些项目中使用过Team Foundation Server,所以如果可以的话,我会尽量远离它。
我们最近的buildserver由Nant脚本组成,这些脚本从Subversion存储库中签出源代码。构建本身是由MSBuild完成的。然后将构建的结果xcopied到stage和production。
应该有一种简单的方法来将数据库更改从开发阶段转移到生产阶段。我们有一个工具(http://www.codeplex.com/ScriptDB)来编写开发数据库的脚本。结果被签入Subversion。很容易看出Subversion日志中发生了什么变化。
发布于 2010-04-30 06:05:16
3个安装中的每个都共享相同的数据库。
这似乎是一个糟糕的决定。如果dev1、dev2和test都使用相同的数据库,那么dev1如何在不干扰dev2和test的情况下尝试更改模式(假设使用实验模式的代码尚未签入)。
此外,数据库成为单点故障,因此,如果有人意外地删除/截断了一个重要的表,那么所有的工作都会停止。
理想情况下,每个环境都应该有自己的DB。我猜如果您使用的是非免费数据库,比如Oracle,那么您可能无法为每个环境提供自己的服务器,但至少每个环境都应该有自己的模式。
https://stackoverflow.com/questions/470391
复制相似问题