我已经研究了很长时间,但仍然没有找到任何令人满意的解决方案。我们有一些共享库(.csprojs),它们也相互依赖以及第 3 方 dll。我想在几个 .sln 文件中引用这些共享项目。
过去,我们曾尝试使用 NuGet 来完成这项工作。我们制作了所有共享组件包并有一个本地提要。然而,当我们想要更新我们的共享组件时,它经常会在更新过程中搞砸并且不可靠。它给我们带来的麻烦多于它的价值,老实说,这让我们不想将共享代码添加到我们的共享库中。
所以,现在我相信在每个解决方案中只引用共享项目会更好,这很容易,但现在还有一个问题:
我们使用功能分支,共享代码不是分支的一部分。我们有一个类似于以下的结构:
/App1 /Development (Folder that just contians Main branch) /Main /Features (Folder that contains all Features) /F1 /App2 /Development /Main /Features /F1 /F2 /Shared /Development /Main
但是,如果我们对任何功能中的共享进行更改 - 并且它指向 /Shared/Development/Main 中的代码,那么它只会针对我的所有功能进行更新,并且我们不会保留共享更改的记录。
解决这些问题的正确方法是什么?有没有更好的方法在解决方案之间共享组件?