我正在使用颠覆和南特(和视觉工作室 IDE)
我一直在遵循http://blog.jpboodhoo.com/NAntStarterSeries.aspx上建议的项目结构,它提倡自包含颠覆目录,开发人员可以在其中进行结帐并立即一步构建项目。
我的回购结构是这样的:
/Repo
/MainProject
/trunk
/doc <-- documentation
/lib <-- binary-only DLLs
/src <-- source code for MainProject
/tools <-- holds tools like nant, nunit, etc
...
/ClassLibrary1
/trunk
/doc
/lib
/src
/tools
...
/ClassLibrary2
/trunk
/doc
/lib
/src
/tools
不清楚的是如何构建一个具有类库的项目,这些类库又引用第三方库 dll 本身。
目前,我有一个主项目,其工作目录如下
例子:
/MainProject
/build
/lib
/src
/MainProject
/ClassLibrary1 <-- svn external to svn://server/repo/ClassLibrary1/trunk/src
/ClassLibrary2 <-- svn external to svn://server/repo/ClassLibrary2/trunk/src
/tools
...
在构建 MainProject 时,我编译类库并将 dll 输出到构建文件夹。但是,类库本身具有它们引用的第 3 方纯二进制 DLL。
我的问题是为了构建 MainProject,我必须以某种方式将第 3 方 DLL 从类库中获取到构建输出中。我怎么做?
想法: 1. 我应该将这些第 3 方 dll 的副本存储在 MainProject 的 lib 文件夹中吗?2. 或者我的 svn:external 引用应该指向类库项目的主干而不是 src 以便我可以访问类库的 lib 文件夹?3. 我应该对单个文件使用 svn:externals 的 subversion 1.6 功能吗?