我想在Virtual PC 2007中创建一个VM,用作Visual Studio 2005 / SQL Server 2005(和VSS for source control)中现有ASP.NET应用程序的开发环境/沙箱。
我认为我需要创建一个环境的“基础”副本(使用os,Visual Studio和Sql Server),然后将其复制到我实际开发的“工作”版本中。我将与一个或两个其他开发人员分享这个虚拟机,他们将在应用程序的不同部分工作。
这是个好主意吗?让我的应用程序/数据库进出VM以及我对VSS所做的更改的最佳方法是什么?它只是从主机位置到VM共享的副本又返回?如何让所有内容保持同步?
谢谢!
答案 0 :(得分:2)
我会认真地建议你做以下事情:
从这两点可以看出,您应该使用VMware ESX Server和相关产品。如果您不想/无法在其中投入资金,则可以使用此产品的免费版本:http://www.vmware.com/go/getesxi/,但我从未使用过它。
无论您选择使用企业版ESX服务器还是免费版,我建议您将IT组织的IT部门放在其上。
答案 1 :(得分:1)
如果您认为有必要,这不是一个坏主意。
当我需要开发Windows应用程序时,我会做类似的事情,因为拥有一个干净的环境真是太好了。这样我就不会意外地添加对.NET Framework中不一定包含的内容的引用。它迫使我在开发和记录时安装任何第三方组件。通过这种方式,我可以预见到先决条件,并确保在将软件加载到用户的PC之前记录它们,并想知道它为什么不起作用。
只需确保托管的PC可以处理额外的负载。我的主要Dev PC是一个带有4GB RAM的双核处理器。我将2GB计划用于我计划用作开发环境的任何虚拟PC,这样我就不会遇到太多的性能问题。
至于保持所有内容同步,您将需要使用某种源代码控制(就像在正常环境中一样)。 (我喜欢SVN和Tortoise SVN作为我的首选客户,但有很多选择。)只需将虚拟PCS视为普通PC。确保他们可以访问网络,因此您都可以访问源代码存储库。
答案 2 :(得分:1)
您可以使用快照功能(或其任何名称) - 将“系统”的chagnes保存到增量文件,以便您可以轻松恢复到虚拟PC的早期状态。它有一些性能损失。这样您就不必保留基础和工作副本。
答案 3 :(得分:1)
我将Virtual PC用于我的所有Windows开发。我工作的公司在FoxPro中使用遗留产品,在.NET中使用当前产品,因此我设置了2个环境: 1 - 带Foxpro和VSS的Windows XP - 我可以直接从这个图像访问VSS,代码永远不会进入我的网络中的其他机器(我远程工作) 2 - 带有VS2008的Windows 7以及开发.NET软件(包括TFS)所需的所有相关部分。这是我每天使用的机器 - 我有一台多肉的台式电脑,所以我能够提供VPC 4GB内存,运行速度和普通PC一样快。
我的VPC在VirtualBox中运行,并且与其他产品一样好。之前的回答提到了VMWare ESX,它是大规模部署的优秀产品,但如果你想要一个服务器解决方案,那么VMWare Server是免费的,是一个很好的虚拟化平台。
如果您正在寻找尝试更改的方法并且仍想使用VPC,那么撤销磁盘非常出色 - 您启动计算机,破解您的内容,当您关闭时,您可以选择保存或丢弃整个会议。
对我来说,虚拟PC是快速设置/拆除开发环境的绝佳方式,我很难回到使用单台机器完成所有工作。