【问题标题】:how to handle a common library in TFS & share dlls如何处理 TFS 中的公共库和共享 dll
【发布时间】:2012-10-11 15:22:47
【问题描述】:

我在 tfs 源代码管理中设置了 2 个不同的应用程序。两者共享一个公共库,也在源代码管理中设置。

当前对公共库进行更改的过程是构建它,跨 dll 复制到一个位置,以供其他应用程序拉入并使用。这是手动操作,效果不佳,尤其是现在我正在转向 TFS CI 构建。

在 TFS 中这样的布局:

-TFS
   - Web 1
      | Main
      | RB_1_0
   - Web 2
      | Main
      | RB_1_0
   - Shared
      | Main
      | RB_1_0
      | RB_2_0
      | RB_3_0

所以我希望改变它,自动化它。但不知道我怎么能这样做。如您所见,有多个分支等。作为我正在考虑设置的公共库,就像我使用 nuget 包一样,其中更改被推送到我的 web 1 和/或 web 2。我不确定它有多容易进行设置。

是否可以查看上述结构并就管理输出的 dll 从 common 的分布的最佳方式提出意见?在 CI 环境中? Nuget 是最佳选择吗?

【问题讨论】:

    标签: c# visual-studio tfs nuget


    【解决方案1】:

    NuGet 就是我用来做这个的。

    修改构建过程为通用包创建新包

    build a nuget package 添加一个活动,并将另一个活动复制到您用作 NuGet 存储库的网络共享。有一些像Tfs NuGetter 这样的项目可以用来代替手动编辑构建模板。

    如果您不想修改构建模板,则可以使用 [tfs deployer] 之类的工具并编写自定义部署脚本来创建 NuGet 包。或者编写一些挂钩到构建完成事件的内容。

    在构建时为所有解决方案启用恢复包

    这意味着您无需将软件包存储在源代码管理中,或者在您获得最新解决方案时处理未下载的软件包。

    当你想更新依赖的版本时,打开解决方案并像任何普通的 NuGet 包一样更新它。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多