目前使用的是git submodule。
原来是一个项目A,但是呢,随着业务的发展,header和footer其他想也要用,于是抽出来了B,后来项目中一个模块功能比较复杂也抽出来了C。
现在是header部分作为submodule,关联到第A和C中。
B可以共享A和C的store。
但是A和C是独立的,很多相公的功能要在两个项目中写,很少麻烦。
另外关联B,因为自动关联的是commitid,所以需要切换到对应的分支。
如果需求设计到三个项目,非常麻烦,需要在三个项目上建分支,然后合分支,光切分支都麻烦的要死。
这种情况,使用什么方式更合适,有经验的大佬推荐下。
使用 Monorepo 架构
Monorepo 是一种将多个相关项目放在同一个版本控制仓库中的方法。有如下优势:
工具如 lerna、nx、pnpm,可以帮助管理 Monorepo。
针对你描述的问题,前端项目随着业务的发展而变得复杂,需要进行模块化分离和管理,同时减少重复代码和维护成本。在这种情况下,除了继续使用 Git Submodule 之外,还可以考虑以下几种更现代和灵活的方法来管理和组织你的项目结构:
使用 Monorepo(单仓库)模式,即将所有相关的前端项目(如A、B、C)放在同一个 Git 仓库中。这种方式可以通过工具如 Lerna 或 Yarn Workspaces 来管理。这些工具支持跨包依赖管理、版本同步和发布流程简化。
优点:
缺点:
将可复用的部分(如 header、footer 等)打包成独立的 npm 包或 Yarn 包,并在需要的地方通过 npm 或 Yarn 安装。
优点:
缺点:
考虑使用 Git Subtree 替代 Git Submodule。Git Subtree 允许你将一个 Git 仓库作为子目录合并到另一个 Git 仓库中,并且可以保持这种关系的更新更加简单。
优点:
缺点:
根据你的情况,如果项目之间共享代码较多,且需要频繁更新和维护,推荐使用 Monorepo 搭配 Lerna 或 Yarn Workspaces。这种方式可以极大地简化跨项目依赖和版本控制,提高开发效率。如果共享的代码模块较为独立,且不需要频繁更新,可以考虑将其打包为 npm/Yarn 包进行分发。对于 Git Submodule 的问题,如果更新和管理的复杂性成为瓶颈,可以考虑切换到 Git Subtree。
前端抽离公共枚举如何做?一头雾水 目前的项目中有很多枚举文件,同时又有各种定义类型, 有数组、有对象、有Map ,到底如何去设计这个全局公共的枚举字典,同时又能按业务模块去拆分。欢迎指教。
webpack3.8.1 使用commonChunkPlugin对代码进行分割,提取出vendors,mainfest,发现类似0.xxx.js这样的chunk中包含依赖,如echarts, 1.请问要如何配置才可以分离出 非入口0.xxx.js中的echarts依赖? 2.如果再在图1的commonChunkPlugin中继续增加类似 new webpack.optimize.CommonsCh
问题内容: 我正在开发一个新项目,其中react / express作为前端,而loopback作为后端api。我在开发环境中使用不同的端口将它们分开。 我应该如何在生产中部署它们? 托管在同一服务器上-将后端与其他子域分开? 在2台不同的服务器上托管-似乎无法使用同一域。 问题答案: 您可以部署 您的 静态托管服务* 和 CDN 前端 *** AWS S3 + AWS CloudFront Go
例如有一些场景,例如注册时的信息验证,可能会用到正则表达式进行验证。这个时候为了用户体验,可能会在前端进行验证,提醒用户输入正确的格式。传输到后端后,后端也会使用相同的正则对用户传输过来的信息进行验证。这个时候这个正则表达式会在前后端共用,如果要更改,那么就需要前后端都进行更改。除了这个例子,对于使用 typescript 的应用,会用到一些类型声明,这些声明和后端的类型声明也是高度相关的,声明改
本文向大家介绍详解Flask前后端分离项目案例,包括了详解Flask前后端分离项目案例的使用技巧和注意事项,需要的朋友参考一下 简介 学习慕课课程,Flask前后端分离API后台接口的实现demo,前端可以接入小程序,暂时已经完成后台API基础架构,使用 postman 调试.git 重构部分: ken校验模块 auths认证模块 scope权限模块,增加全局扫描器(参考flask HTTPExc
前后端分离 在B/S架构的环境中,前后端分离一直都众说纷纭,没有一个标准。我觉得打开可以分为三个阶段: 传统的分离方法 传统意义上的前后端分离,前端指的是美工、切图、设计,后端是实现代码、数据库相关的实现。美工设计和生成的前端页面,给到程序员来做集成。那么这里其实就不分什么前后端了,程序员从数据库一直搞到前端页面的样式,就是“全能型运动员“。当然,一般传统上的开发协作模式有两种: 一种是前端先写一