Mic*_*ier 7 msbuild version-control build-automation sdk visual-studio
问题是最后 - 让我首先提出上下文:
我们在使用Visual Studio时遇到的一个问题是确保团队中的每个人都使用相同版本的SDK.
一个典型的问题是让某人使用不同的Direct X SDK版本导致代码的不同行为,或者有人升级到更新的Platform/Windows SDK以便使用一些新的API并让代码在其他程序员身上失败机器,如果他们仍然使用以前的版本.
我们用来解决其他中间件问题的方法是将整套库,包含文件,工具链等放在我们的源代码控制系统中,并让我们的项目使用这些,这样就没有人必须安装任何东西.我们还设法使用早期版本的Direct X SDK,但由于SDK和工具链之间的密切联系,我们总是遇到Windows/Platform SDK的问题.
由于我们现在必须支持VS2010和VS2012,并且必须支持从Windows XP到Windows 8目标,我们必须支持v100,v110和v110_xp工具集.
这意味着我们需要所有相关的编译器和相应的SDK,这些都在我们的开发人员机器和构建系统上:维护成本过高,特别是考虑到随机窗口更新和.net框架版本通常会破坏msbuild.
所以问题是:
是否可以让Visual Studio使用未安装的工具集和SDK,而是让它使用普通VS安装位置之外的某些文件夹中的可用内容?
奖金问题:如果可行,是否可以在不更改机器上任何本地安装的配置文件的情况下执行此操作 - 即:在解决方案/项目或属性表中包含所有内容 - 因此,如果我们更改源上的结构控制系统我们没有更新每台机器?
谢谢 :)
考虑到其中一些工具的安装有多复杂,这听起来太复杂了。我将通过投资一些 PowerShell 脚本来解决这个问题,这些脚本查看已安装的工具和工具路径并“监管”安装。检查所有内容的已安装版本(包括补丁和更新)相对容易。您可以每晚运行它们,或者作为构建的一部分。此外,您还可以比较不同安装的各个方面,例如开发人员盒子上安装的工具版本与构建服务器。
这将为您提供 10% 的疼痛的 90% 的价值。
归档时间: |
|
查看次数: |
223 次 |
最近记录: |