我这里有 300 行长的 NAnt 文件,它相当混乱。我想知道是否有编写 NAnt 脚本的风格指南以及这样做的最佳实践是什么。

有小费吗?

有帮助吗?

解决方案

我不知道有任何已发布的风格指南,但我当然可以分享我的经验。您可以使用许多在其他编程环境中使用的相同技术,例如使代码模块化并将其拆分到多个文件中。在我设置的环境中,每个项目的布局如下:“[ProjectName]\Common”包含一个通用构建文件,该文件链接到我的几乎所有项目。我还有一组常见的颠覆目标存储在一个文件中。“Common”子目录实际上是一个 svn:external,因此它会自动在多个项目之间保持同步。在Common.build文件中,有很多环境属性,加上一些可重用的文件集,一些可重用的目标,以及每个项目“StartUp”目标使用的“StartUp”目标。

“[ProjectName]\Project.build”包含该项目的所有特定属性和文件集,其中一些会覆盖 Common.build 中的设置。该文件还包含一个“StartUp”目标,它设置一些运行时设置,例如程序集版本信息和任何依赖路径。它还执行 Common.build 中的“Startup”目标。该文件包括 Common.build 文件。

“[ProjectName][AssemblyName].build”包含特定于单个程序集的所有设置和目标。该文件包括 Project.build,而 Project.build 又包括 Common.build。

这种层次结构在我们的情况下运行良好,这让我们在持续集成服务器上构建产品的主干版本和多个分支版本。就目前而言,构建主干版本的脚本与任何一个分支的脚本之间的唯一区别只有几行。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top