Architecture 跨存储库共享项目

Architecture 跨存储库共享项目,architecture,tfs,Architecture,Tfs,我正在努力解决一个问题,我的公司正试图给它的解决方案贴上白色标签。我们有一个解决方案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中的许多项目共

我正在努力解决一个问题,我的公司正试图给它的解决方案贴上白色标签。我们有一个解决方案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更新项目A/B/C和D。然后将根据项目A/B/C和D的新版本构建项目F

这在TFS中是可能的吗


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

仅考虑以下明确要求

请注意,我们需要解决方案中的实际项目,而不是 装配

您可以只保留一个解决方案—项目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

这是可能的!但是你知道Nuget.org吗?我认为Nuget是解决你的问题的最好办法。
在本演示文稿中,Scott Hanselman展示了如何使用NuGet作为企业解决方案:

我建议了这种方法,但被开发经理拒绝了。如果发布符号并为源代码编制索引,则不需要实际的项目进行调试。调试器将能够从生成服务器中找到实际的源文件。请参阅。另外,您所谈论的是TFS的哪个版本,以及“存储库”是什么意思?TFS版本控制不使用术语“存储库”,尽管git是受支持的,当然也使用该术语。你的意思是什么?是的,我建议使用myget.org来表示nuget软件包+符号,是的,你是对的,我不应该使用术语repositorySo,哪个版本的TFS?我们使用基于云的TFSI版本也推荐nuget,但也被拒绝了。nuget不在网站nuget.org上,而是一个内部nuget,只是在公司里分享。。。是你推荐的吗?实际上我推荐使用“myget.org”