跨存储库的共享项目

时间:2014-04-29 06:06:53

标签: architecture tfs

我正在努力解决一个问题,即我的公司正试图将其标记为白色标签。我们在Repository A中有一个解决方案A,就像这样

Repository A
      Solution A
          Project A
          Project B
          Project C
          Project D
          Project E (not shared and dependent on project A/B/C/D)

我们希望将解决方案A中的许多项目共享到存储库B中的另一个解决方案B.例如

Repository B
      Solution B
          Project A (From Solution A and Repository A)
          Project B (From Solution A and Repository A)
          Project C (From Solution A and Repository A)
          Project D (From Solution A and Repository A)
          Project F (not shared and dependent on project A/B/C/D)

这样,当任何项目A / B / C或D被更新和提交时,解决方案B将只需要更新,项目A / B / C和D将从存储库A更新。项目F然后将针对新版本的项目A / B / C和D进行构建。

TFS甚至可以实现这一目标吗?

请注意,我们需要解决方案中的实际项目而不是程序集。这是出于调试目的。

2 个答案:

答案 0 :(得分:1)

这是可能的!但你知道Nuget.org吗?我认为Nuget是您案例的最佳解决方案。 在本演讲中,Scott Hanselman展示了如何将NuGet用作Enteprise解决方案:NuGet for the Enterprise: NuGet in a Continuous Integration Automated Build System

答案 1 :(得分:0)

仅考虑以下明确要求

  

请注意我们要求解决方案中的实际项目不是   组件。

您可以保留一个解决方案 - 项目E,F,...,N是白色标记的应用程序。

像这样:

Repository A
      Solution A
          Project Library A
          Project Library B
          Project Library C
          Project Library D
          Project Whitelabel E
          Project Whitelabel F
          Project Whitelabel N