2008-09-26 55 views
3

我在哪里工作我在单独的存储库中有几个项目。每个项目都有很多共同的代码,我想将其引入到一个独特的项目中。我正在考虑用以下方案调用该项目:Company.Department.Common或Company.Department.Utility。在构建中集成外部源

我已经为此构建了一个项目,并且它有一个自动构建脚本(与其他项目一样)。

我的问题是,我想重构我现有的项目,以依靠这个新项目。一种非常基本的方法,但不是我正在寻找的方法是简单地构建我的实用程序项目,将DLL复制到我的消耗项目中的lib文件夹中,然后检查该消耗项目中的DLL。

我个人觉得方法很差。我想参考一下我的Utility项目,并在构建消费项目之前执行svn-update和Build Utility项目。仅供参考,Utlity项目中的代码类型是日志记录工具,BDD单元测试类,IoC工具和通用公司。部门集中的类。

希望我的问题不太含糊,但有一些答案,我可能会精确地关注我想要做的事情。

最后,这是用于.Net项目,并使用NAnt作为构建脚本,而svn用于代码版本控制。

回答

6

格雷格是正确的,你可能会想使用svn:external功能。我创建了一个关于如何在Windows上使用TortoiseSVN执行此操作的分步指南。我发现它在我使用它的前几次时非常混乱。我创建了指南,以便我可以查看它,因为我不会一直这样做。

Using svn:externals with Windows

1

你检查了svn:externals功能吗?这使您可以将不同的存储库显示为更高级存储库的子目录。如果我明白你想要做什么,这可能会有所帮助。

+0

听说某个地方有使用SVN的问题:同一档案库中的外部(最明显的是,当谈到做备份,它会导致邪恶的圆形检出)。你知道这是否仍然是一个问题? – 2008-09-27 06:36:56

+0

我从来没有使用svn:externals,同时指向同一个存储库。这听起来像是可能会导致问题,因为svn:externals旨在指向一些* other *存储库。 – 2008-09-27 20:33:56

相关问题