当前位置: 首页 > wzjs >正文

贵州网站建设 零玖伍壹网络宿州网站建设网站

贵州网站建设 零玖伍壹网络,宿州网站建设网站,哪个网站做app,专业推广app团队发布版本有收费版/免费版/客户定制版,虽然说在代码中增加条件判断,使用环境变量切换逻辑,能适配多个版本,但实际操作中常常无法这样理想化,有些差异就是写死在代码上。 所以摸索了以下分支管理模式: main&…

发布版本有收费版/免费版/客户定制版,虽然说在代码中增加条件判断,使用环境变量切换逻辑,能适配多个版本,但实际操作中常常无法这样理想化,有些差异就是写死在代码上。

所以摸索了以下分支管理模式:

main:主分支,维护收费版代码,作为核心代码库
dev:开发分支,所有功能在此开发、测试后合并到 main
free:免费版分支,基于 main 创建,调整/删除或屏蔽某些模块
custom-{客户名}:客户定制分支,基于 main 创建,额外添加或调整某些模块

每做完一个新的迭代,通过merge(合并) 或 cherry-pick(挑拣) 合到发行版中。

merge(合并)cherry-pick(挑拣提交)
适用场景- 更新的那部分代码完全兼容各个版本- 单独为某一版本做的特定功能、特定配置
引入内容整个分支的全部改动仅特定提交的改动
提交历史保留原始历史和合并节点仅复制选定的提交,不保留合并关系
冲突处理多个提交一起处理冲突,可能复杂只处理挑拣的提交,冲突范围小
溯源清晰保留合并路径,方便审计无法追溯原始分支来源

>>更新的那部分代码完全兼容:例如免费版和收费版差异不大,merge 可以一键同步所有功能。

>>代码有明显差异:例如收费版新增10 个新特性,免费版只要其中的 3 个-->这时用cherry-pick

流程 

1、创建main分支 (可以初始化 README.md、.gitignore、初始代码、目录结构等)
2、在main分支完成一次基础提交
3、从main创建 dev 分支
4、从dev创建feature分支(可能创建多个feature分支)
5、在feature分支上进行开发
6、切换到dev分支,把feature分支合到dev分支。
7、切换到main分支,把dev分支合并到main分支。
8、从main分支创建release分支。
9、在realese分支上修改特定配置。
10、把release分支发布。
11、重复步骤4-7
12、切换到release分支,把main分支合并到release分支。(此前在release分支修改的特定配置不会被覆盖)
13、把release分支发布。

# 合并收费版
git checkout main
git merge dev# 挑拣免费版需要的功能
git checkout free
git cherry-pick <commit-id>

具体实施:

# 初始化项目
git init
echo "# 项目名称" > README.md
git add .
git commit -m "init: 初始化项目"# 创建 main 和 dev
git branch -M main
git checkout -b dev# 创建 free(免费版分支,长期维护)
git checkout -b free# 推送到远程仓库
git remote add origin <你的仓库地址>
git push -u origin main
git push -u origin dev
git push -u origin free##### 功能开发 ##########################3git checkout dev
git checkout -b feature/login
# 开发、提交代码
git add .
git commit -m "feat: 实现用户登录"git checkout dev
git merge --no-ff feature/login -m "merge: 合并登录功能"
git push origin dev
git branch -d feature/login#### 收费版发布 #######################33git checkout main
git merge --no-ff dev -m "release: 发布收费版 v1.0.0"# 创建 release 分支
git checkout -b release/v1.0.0
# 根据实际需要调整收费版配置
vim config/settings_pro.py# 提交发布
git add .
git commit -m "chore: 调整 v1.0.0 收费版配置"
git push origin release/v1.0.0# 打标签发布
git tag v1.0.0
git push origin v1.0.0

http://www.dtcms.com/wzjs/533940.html

相关文章:

  • 杭州平台网站建设h5网站和传统网站
  • 如何组建做网站的团队中国建设银行湖南分行官网站
  • 菜户营网站建设济南高新区网站建设公司
  • 深圳互联网公司网站wordpress 搭建查询
  • 网站开发是打代码吗网站优化的方法有哪些
  • 做网站对电脑要求高吗上海市城乡建设网站
  • 做笔记的网站vi设计多少钱
  • 下载上海发布官方网站最新版在线 网
  • 设计网站公司 讲湖南岚鸿12306网站谁建设的
  • tp3企业网站开发百度云wordpress contact 伪静态
  • 新手做网站用什么软件专门做二手手机的网站吗
  • 网站开发流程 文档多语言网站模板
  • 开锁公司网站源码一件代发应该在哪个网站上做
  • 优化网站排名工具市场营销图片高清
  • 企业网站主页设计图网站建设网课
  • 网站服务器一年的费用梧州自助建站seo
  • 网站开发多少钱一个月自己怎么做一个企业官网
  • 阿里云服务器可以做网站宝塔建设网站域名进不去
  • wordpress网站前台密码湖南做网站 就问磐石网络专业
  • 淄博桓台网站建设公司编程培训机构推荐
  • 中国建设网站下载安装广元市城乡建设门户网站
  • 北京网站备案拍照地点推广普通话活动
  • 我的网站百度找不到了网站做跳转的意义
  • 漯河北京网站建设在自己网站做支付可以吗
  • 手机做网站用什么软件建设银行绑定手机号码网站
  • 青岛模版网站建设哪家好白银市建设局网站
  • 单位门户网站功能全国企业信用公示系统查询
  • 滁州网站开发czesou假网站网站怎么做
  • 深圳展览设计网站建设福州百度关键词优化
  • 别人做的网站怎样提升网站权重