【发布时间】:2011-04-12 17:36:30
【问题描述】:
我们使用 Nant 和 CruiseControl.net 进行自动化构建。当谈到这个过程时,我很绿色。在研究一些事情时,我注意到对于自动化构建过程中涉及的大多数(所有?)解决方案,bin 文件夹都包含在项目中。这是自动化构建的要求吗?如果排除 bin 文件夹,是否需要手动将该文件夹及其中的所有文件复制到部署服务器?
谢谢。
【问题讨论】:
我们使用 Nant 和 CruiseControl.net 进行自动化构建。当谈到这个过程时,我很绿色。在研究一些事情时,我注意到对于自动化构建过程中涉及的大多数(所有?)解决方案,bin 文件夹都包含在项目中。这是自动化构建的要求吗?如果排除 bin 文件夹,是否需要手动将该文件夹及其中的所有文件复制到部署服务器?
谢谢。
【问题讨论】:
如果您指的是项目下的 /bin/debug/ 文件夹,则不需要将它们签入源代码管理。如果您有外部库(例如 log4net.dll),则应将它们与您的代码一起检查到源代码管理中,但应在单独的文件夹中(例如名为“ThirdParty”或“DLLs”)。当 CruiseControl.net 运行时,它应该编译任何已修改的程序集,并将输出复制到 /bin/debug/ 文件夹,就像 VisualStudio 在您的机器上复制这些文件一样。
【讨论】:
最好在自动构建过程中包含 bin 文件夹,因为它包含一些外部 dll,如 AjaxControlToolkit 以及内部 dll。
我们在这里从自动构建中排除了 Debug 文件夹和用户选项文件 (*.suo)。
【讨论】: