Closed. This question is opinion-based。它当前不接受答案。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
2年前关闭。
我试图找出最好的方法来处理我们公司中的dll更新。以前我们只有一个代码库,每个项目都只复制了一个。不好玩。
新设置总共有7个dll,然后是最终的Unity游戏。
5个dll是独立运行的,它们没有依赖关系。
6取决于前5
7取决于前6
Unity项目取决于所有7个项目
更新低级dll时出现问题。但是,仅假设我们已对#6进行了更改。
在本地对#6进行更新,测试更改,它可以工作
从Dev分支合并到Main分支
*在这一点上,#7还没有意识到#6的变化,我们将说该变化不会以任何方式影响#7
我们是否应该构建#6,更新#7(这是从nuget软件包中获取#6),将#7合并到Main中,构建然后使用所有需要的dll更新游戏?还是我们不应该从#^的更新中加载#7,因为我们知道更改不会影响该项目。
总的来说,我只是从其他地方寻找一些“我们如何做到这一点”,这些地方在如何管理dll方面具有更资深的经验。
想改善这个问题吗?更新问题,以便editing this post用事实和引用来回答。
2年前关闭。
我试图找出最好的方法来处理我们公司中的dll更新。以前我们只有一个代码库,每个项目都只复制了一个。不好玩。
新设置总共有7个dll,然后是最终的Unity游戏。
5个dll是独立运行的,它们没有依赖关系。
6取决于前5
7取决于前6
Unity项目取决于所有7个项目
更新低级dll时出现问题。但是,仅假设我们已对#6进行了更改。
在本地对#6进行更新,测试更改,它可以工作
从Dev分支合并到Main分支
*在这一点上,#7还没有意识到#6的变化,我们将说该变化不会以任何方式影响#7
我们是否应该构建#6,更新#7(这是从nuget软件包中获取#6),将#7合并到Main中,构建然后使用所有需要的dll更新游戏?还是我们不应该从#^的更新中加载#7,因为我们知道更改不会影响该项目。
总的来说,我只是从其他地方寻找一些“我们如何做到这一点”,这些地方在如何管理dll方面具有更资深的经验。
最佳答案
如果DLL在公司内部但在项目/解决方案外部,则我们仅通过nuget接受其DLL。
如果需要对项目进行更新(关键),则由团队维护内部依赖性来通知相关项目。然后根据团队风格将其放入当前的sprint或安排为瀑布式需求。否则,所有团队之间的依赖关系都通过nuget部署,并根据团队实践在下一个或当前开发周期内自动获取。
无论如何,每个版本的质量检查都会执行完全回归,因此效果很好。
因此,在您的情况下,对#6的更改不会立即传播,除非#6的团队认为它对组织至关重要,在这种情况下,所有相关项目都必须更新。 #7的团队会收到此消息,进行自我更新,测试,然后向您推出所需的更新。