Monorepo(monolithic repository)是一种项目架构,简单来说就是,将多个项目或包文件放到一个git仓库来管理,很多前端项目vue3、element都是采用的这种架构模式。 之所以应用monorepo,主要是解决以下问题:

  • 代码复用的问题
  • 开发流程统一
  • 高效管理多项目/包。

随着.NET 8 Preview 1发布的临近, 今天要给各位介绍一下 dotnet的一个Monorepo存储库:https://github.com/dotnet/dotnet 。 这个仓库早在2022年的12月份就发布了 ,具体可以参见:https://github.com/dotnet/arcade/issues/11584

这个新存储库是虚拟整体式存储库 (VMR)。它包括生成 .NET SDK 所需的所有代码,这些代码是从各个产品存储库(如 dotnet/roslyndotnet/runtime)镜像的。也包括用于构建Linux上 .NET 的全产品构建系统 https://github.com/dotnet/source-build

VMR 具有以下主要特征:

  • 整体式 - 存储库是整体式的,因此单个提交即可完全标识生成 .NET SDK 所需的整个源代码
  • 虚拟 - 它是构成整个产品的单个产品存储库的镜像(而不是替代品),并排放置在一个存储库中。对基础单个产品存储库所做的更改将同步到 VMR。
  • 实验性 - 目前,存储库是简化发布过程的计划的一部分,并不意味着依赖于此。我们预计该存储库将在计划于2023年 2 月发布的 .NET  8.0 预览版 1 首次使用。

存储库是一个正在进行的工作,有很多限制,按照路线图 https://github.com/dotnet/dotnet/blob/main/src/arcade/Documentation/UnifiedBuild/Roadmap.md ,这是我们在 .NET 历史上开发、构建和交付产品的方式上的最大变化。需要两个版本(.NET 8 和.NET 9)才能完成交付。

最新文章

  1. iOS 图片的按照比例拉伸
  2. Java-BlockingQueue的使用
  3. jquery之hasClass
  4. java判断身份证有效性
  5. Java实现颜色渐变效果
  6. Intellij IDEA常用快捷键——Mac版
  7. 删除对象中的key
  8. 用Python作GIS之二:STARS开发环境配置
  9. Java NIO 缓冲区学习笔记
  10. 在Linux环境下给php添加mbstring扩展
  11. Qt: qobject_cast<QPushButton*>(sender()) 简化信号与槽的编写
  12. 01-资料管理器(Directory/DirectoryInfo操作文件夹类)
  13. Linux中printk()实例
  14. Linux 中NFS服务器的搭建
  15. nginx https 配置样例
  16. eclipse快键
  17. linux日志查找技巧
  18. 修复/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory问题
  19. excel 2016 for mac破解
  20. Java 8 forEach examples遍历例子

热门文章

  1. ML-决策树
  2. Python基础之函数:4、二分法、三元表达式、生成/推导式、匿名函数、内置函数
  3. Java代码审计sql注入
  4. Vue.js3.0练习题
  5. natapp内网穿透
  6. K8S之prometheus-operator监控
  7. hwlog--utils.go
  8. golang内置包管理工具go mod简明教程
  9. 自动增加 Android App 的版本号
  10. ArcGIS QGIS学习二:图层如何只显示需要的部分几何面数据(附最新坐标边界下载全国省市区县乡镇)