单体仓库:如何管理依赖项并向上游贡献?

主要观点:在包含第三方项目的 monorepo 子目录中,如何跟上上游、在其基础上维护自己的更改并将更改提交回上游。未在 monorepo 工作过,但有使用git-subtreegit filter-branch处理 git 仓库的经验,这些技术自动化较难。网上关于 monorepo 多是利弊讨论,细节少。
关键信息:有人用 git 子模块和git-subtree在 monorepo 中工作,工具使用痛苦但可在 monorepo 内推送和拉取更改;可考虑在 upstream repo 和 monorepo 间插入中间分叉 repo;josh-project/josh 项目可动态组成“monorepo”但未用于生产;有人认为第三方项目应在 monorepo 中,用支持固定的语言,内部设置缓存服务器可实现。
重要细节:arxanas 称工具使用困难但可在 monorepo 内操作,不期望自动化 monorepo 内和 upstream repo 的贡献;koala 做过 josh 的概念验证并写了笔记;mqudsi 认为第三方项目应在 monorepo 中,内部设置缓存服务器可解决问题。

阅读 7
0 条评论