Tod*_*ier 18 .net rake build psake
我正在研究用于ASP.NET MVC 2应用程序的构建工具.我喜欢使用脚本语言而不是XML的想法,并将我的选择范围缩小到psake或rake.我对Ruby或PowerShell没有多少经验,但我也愿意学习.如果那是我最好的选择,我不介意在我的构建服务器上安装Ruby.
我的构建没有太复杂或不寻常.它需要从Mercurial仓库中获取源代码,构建Visual Studio 10解决方案,对配置文件进行一些转换,基于Database(Data Dude)项目构建/运行SQL脚本,复制VS的Web Publish,以及做一些其他基本文件同步.
任何人都有可以比较它们的rake和psake的经验吗?一个人在功能方面是否优于另一个,还是仅仅归结为脚本语言偏好?
提前致谢.
编辑:我还没有CI解决方案,但我倾向于使用TeamCity.我以为我会提到它,以防一个构建工具比另一个更好.
Jam*_*acs 24
我不得不同意Derick的评估.这真的取决于你和你的团队是否对Ruby或Powershell感觉更舒服(以及你在学习中看到的更多价值).两者都有自己的优点和缺点.要么比XML恕我直言更好.正如德里克所说,我也有自己的偏见,因为我是psake的原创作者.:)
psake/PowerShell的一些优点:
rake/Ruby的一些优点:
两种解决方案都可以帮助您构建解决方案 选择适合您团队的那个.希望有所帮助.
Der*_*ley 18
如果您还没有这样做,请查看我的Albacore项目.它是构建.NET解决方案的一系列rake任务,并且可以使.NET解决方案更容易使用Rake.您可以从http://albacorebuild.net获取所需的所有信息
话虽如此 - 我显然对我宁愿使用哪种工具有自己的偏见和偏好.所以带着一点盐,理解我的喜好......
..................
老实说,我认为哪个工具可以满足您的需求,而不是哪个工具适合您的技能和舒适程度的问题.psake和rake + albacore都具有相同的功能.他们都很好.与其他工具相比,它们使您的工作变得非常轻松.但根据他们的背景和来源,他们有不同的方法和思维方式.
您是否更熟悉所有Microsoft平台的工具?或者您是否熟悉典型MS堆栈之外的工具,但仍然为在MS堆栈上构建软件的人员提供价值.
你愿意开始使用PowerShell支持你的构建工具吗?你是否愿意拥有类似#c的体验,能否将C#和其他.NET代码整合到你的构建过程中?您是否希望能够使用powershell的各种插件来帮助自动化窗口的各个方面,以进行部署?
或者您是否愿意拥有一个跨平台,非常开放的系统,通过ruby/rake为您提供更自然的语言体验?您是否熟悉*nix样式工具和命令,ssh以及部署的远程流程执行?
你说你不介意在构建服务器上安装ruby,它会回答这个问题的一部分并让你对选项保持开放态度.不过,还有很多问题需要回答.
如果您对MS堆栈更加满意,并希望获得基于MS的工具的开箱即用体验,那么请使用PowerShell.如果你想扩展你的视野并稍微离开MS堆栈,使用易于集成和使用的工具集来了解Ruby世界的所有内容,那么请使用ruby/rake /长鳍金枪鱼.
我希望有所帮助,即使我没有直接回答你应该使用哪一个.希望我已经给了你足够的时间来考虑确定哪一个对你/你的团队更好.