.net 用于基于团队的开发的服务器规范 出身背景

.net 用于基于团队的开发的服务器规范 出身背景,.net,asp.net,.net,Asp.net,我的公司收到越来越多的web开发请求,因此我正在向团队中添加另一个.NET开发人员 我目前的开发环境真的很差,只有一台安装了本地IIS的PC Windows XP托管web开发项目。我用VisualStudio2008Professional打开那些,没有使用版本控制 这种方法的问题 这种方法不适合基于团队的开发的任何需求,并且阻碍了测试驱动的开发、版本控制和部署。正因为如此,我计划用WindowsServer2008安装一个域环境和一个专门用于开发的附加Web服务器 业务要求 三层Web应用程

我的公司收到越来越多的web开发请求,因此我正在向团队中添加另一个.NET开发人员

我目前的开发环境真的很差,只有一台安装了本地IIS的PC Windows XP托管web开发项目。我用VisualStudio2008Professional打开那些,没有使用版本控制

这种方法的问题 这种方法不适合基于团队的开发的任何需求,并且阻碍了测试驱动的开发、版本控制和部署。正因为如此,我计划用WindowsServer2008安装一个域环境和一个专门用于开发的附加Web服务器

业务要求 三层Web应用程序上的团队开发 测试驱动开发的能力 源代码管理服务器 简单的部署过程 问题 我需要什么来实现这一点? 对于基于团队的web开发,您使用什么方法? 你有多少台服务器? 所有这些可以在同一台服务器上运行吗? 我还应该注意哪些陷阱?
首先,为源代码设置某种版本控制Subversion是免费的

然后,团队的每个成员都会获得一个本地开发环境SQL Server、Visual Studio和IIS(如果需要)。它们都有源代码和数据库的本地副本。他们在这里进行修改和测试

一旦在本地测试了更改,它们就会被提交回源代码存储库


如果您有另一台备用服务器,您可以将应用程序的夜间构建从Subversion推送到该服务器,以测试正在进行的构建。该构建的一部分可能是运行您拥有的任何单元测试,即使开发人员也应该在本地运行它们,以确保构建不会失败。

首先,为您的源代码设置某种版本控制Subversion是免费的

然后,团队的每个成员都会获得一个本地开发环境SQL Server、Visual Studio和IIS(如果需要)。它们都有源代码和数据库的本地副本。他们在这里进行修改和测试

一旦在本地测试了更改,它们就会被提交回源代码存储库

如果您有另一台备用服务器,您可以将应用程序的夜间构建从Subversion推送到该服务器,以测试正在进行的构建。该构建的一部分可能是运行您拥有的任何单元测试,即使开发人员也应该在本地运行它们,以确保构建不会失败

建立一个版本控制系统。用乌龟和Ankh addin对VS进行的Subversion很好而且免费。 您不需要开发服务器,让两个开发人员都从他们签出的repo本地运行。 建立一个版本控制系统。用乌龟和Ankh addin对VS进行的Subversion很好而且免费。 您不需要开发服务器,让两个开发人员都从他们签出的repo本地运行。 我是微软工具的忠实粉丝,部分原因是它们彼此集成良好。Subversion可能不需要花费任何费用购买,但这并不意味着它是免费的:在团队学习、使用和维护它的过程中,您仍然需要向他们支付费用,并解决可能出现的任何问题。根据我的经验,从长远来看,软件成本往往很低

在不了解任何关于您的团队、产品、预算、软件流程和许多其他因素的情况下,应该将这些因素纳入这样的决策中:

使用VisualStudioTeamEdition进行开发。团队测试提供了负载测试功能。TeamData提供数据库版本控制、自动部署和更新,以及数据生成和数据库单元测试。TeamDeveloper提供了对web应用进行单元测试的机制,以及评测和静态代码分析。Team Suite在一个软件包中提供所有功能。 使用Team Foundation服务器进行源代码管理;它包括自动构建、基于SharePoint的团队门户、事务性签入、与Visual Studio的完全集成、集成的错误报告、使用SQL Server作为存储库、提供每天面向团队的错误统计信息等,方便将测试数据从QA移交给开发人员等。 对于硬件,为TFS和构建提供一个专用服务器。使用Windows域,并使用单独的服务器作为域控制器,用于杂项存储和保存来自TFS服务器的备份Exchange也可能在那里运行。每个开发人员都有自己的机器,包括足够的资源来运行SQLDeveloper的本地副本,假设您的应用程序使用数据库。连接一切的千兆网络。 对于较大的应用程序或团队,最好有一个或多个服务器的内部测试环境,这些服务器的配置与生产服务器类似,例如用于数据库数据和日志的单独卷、负载平衡/web garden等。夜间构建部署在那里,以便第二天进行测试。可以是一台服务器,也可以是在某些环境中 ts,可能是一个虚拟服务器。 项目越大,自动化部署就越重要。在多服务器环境中有一些很酷的选项,例如Windows部署服务WDS。 不要忘记监视和日志记录。 如果有帮助的话,我会在我的书的基础设施和操作部分介绍这些问题和选项:

我是微软工具的忠实粉丝,部分原因是它们彼此集成良好。Subversion可能不需要花费任何费用购买,但这并不意味着它是免费的:在团队学习、使用和维护它的过程中,您仍然需要向他们支付费用,并解决可能出现的任何问题。根据我的经验,从长远来看,软件成本往往很低

在不了解任何关于您的团队、产品、预算、软件流程和许多其他因素的情况下,应该将这些因素纳入这样的决策中:

使用VisualStudioTeamEdition进行开发。团队测试提供了负载测试功能。TeamData提供数据库版本控制、自动部署和更新,以及数据生成和数据库单元测试。TeamDeveloper提供了对web应用进行单元测试的机制,以及评测和静态代码分析。Team Suite在一个软件包中提供所有功能。 使用Team Foundation服务器进行源代码管理;它包括自动构建、基于SharePoint的团队门户、事务性签入、与Visual Studio的完全集成、集成的错误报告、使用SQL Server作为存储库、提供每天面向团队的错误统计信息等,方便将测试数据从QA移交给开发人员等。 对于硬件,为TFS和构建提供一个专用服务器。使用Windows域,并使用单独的服务器作为域控制器,用于杂项存储和保存来自TFS服务器的备份Exchange也可能在那里运行。每个开发人员都有自己的机器,包括足够的资源来运行SQLDeveloper的本地副本,假设您的应用程序使用数据库。连接一切的千兆网络。 对于较大的应用程序或团队,最好有一个或多个服务器的内部测试环境,这些服务器的配置与生产服务器类似,例如用于数据库数据和日志的单独卷、负载平衡/web garden等。夜间构建部署在那里,以便第二天进行测试。可以是一台服务器,或者在某些环境中,可能是一台虚拟服务器。 项目越大,自动化部署就越重要。在多服务器环境中有一些很酷的选项,例如Windows部署服务WDS。 不要忘记监视和日志记录。
如果有帮助的话,我会在我的书的“基础设施和操作”一节中介绍这些问题和选项:。

但是可以将MS-SQL数据库与Subversion一起使用吗?数据库是否也进行了版本控制?我在过去看到的是,所有数据库对象的创建脚本都进行了版本控制。然后还可以为测试数据创建和插入版本脚本。这样,数据库中的结构、代码和数据在每次重新构建数据库后都是一致的。就数据库版本控制而言,我非常喜欢Rails风格的迁移。我特别使用-对我来说,杀手级功能是一个针对本地或远程数据库的命令立即建立或升级数据库。但是,是否可以将MS-SQL数据库与Subversion一起使用?数据库是否也进行了版本控制?我在过去看到的是,所有数据库对象的创建脚本都进行了版本控制。然后还可以为测试数据创建和插入版本脚本。这样,数据库中的结构、代码和数据在每次重新构建数据库后都是一致的。就数据库版本控制而言,我非常喜欢Rails风格的迁移。我特别使用-对我来说,杀手级功能是一个针对本地或远程数据库的命令立即建立或升级数据库。
* What do I need to make this happen?
* What approaches do you use for team based web development?
* How many servers do you have?
* Can all of these run on the same server?
* What other pitfalls should I watch out for?