我的TFS系列中有4个项目:
我的外部项目是我存储外部库的地方,而不是他公司开发的。 我的内部项目是我存储在公司开发的内部库的地方。 项目A和项目B是公司开发的项目。
内部项目依赖于某些外部项目库。项目A和项目B依赖于一些内部和外部项目库。
我希望Internal Project依赖于它使用的External库。为了完成这项工作,我将这些项目分支到内部项目中,如下所示:
内部项目
外部项目
项目A
项目B具有与项目A类似的结构。我希望一旦内部项目确定了对外部的引用,当我将项目A引用设置为内部时,它自动引用外部的所有库。我设法通过在我需要的特定版本中分支我想要引用的库来创建外部到内部项目的引用。这很好,但是当我尝试将所有内部项目分支到项目A或项目B时,TFS不允许我这样做,因为内部分支包含在内部来自外部。
我是TFS的新手,这个结构是在公司使用IBM Rational ClearCase时创建的。可能这不是组织我的项目的正确方法,或者分支不是制作我想要的引用的方法。如果有人可以帮助它发挥作用,谢谢。
答案 0 :(得分:2)
更好的方法是使用二进制依赖项。不要依赖源代码,而不是编译的二进制代码。您可以将项目A所需的各种二进制文件(从外部/内部)检入到项目A的lib文件夹中,并将引用设置为指向该路径。
这样,它为Project A开发人员提供了灵活性,可以确定他们何时希望更新他们所依赖的版本(通过检入更新的二进制文件)。
甚至更好方式是让外部/内部库通过NuGet发布其二进制文件,并让Project A / B使用NuGet来管理它们的依赖项。