商汇粹外网资源平台

搜索
查看: 1646|回复: 3

git如何对定制化项目进行管理?

[复制链接]

该用户从未签到

3

主题

6

帖子

46

积分

新手上路

Rank: 1

积分
46
发表于 2022-9-27 11:45:50 | 显示全部楼层 |阅读模式
现在有一个主版本,由于客户需要某些定制而开了个新分支,这个分支不会合并到主版本。但如果主版本有bug并被修复,那定制分支要怎么操作才能和主版本同步修复,而不影响定制部分代码?
回复

使用道具 举报

该用户从未签到

8

主题

36

帖子

124

积分

注册会员

Rank: 2

积分
124
发表于 2022-9-27 11:56:56 | 显示全部楼层
主分支的除此bug修改外的别的新功能等都不同步到客户分支上,那么,简单执行cherry-pick即可;
如果别的功能修改也可以同步过来,那么可以:
1 merge。
2 rebase。// 好处是树比merge会干净些,坏处是多人协作时需要特殊操作才能让别的开发者正确获得服务器新的分支状态。
3 重构,将定制功能挪到主分支,而通过部署配置的形式来确定是否激活定制功能。以后开发还是单主分支模式,没有此定制分支。有利于后续的持续功能更新。
回复

使用道具 举报

该用户从未签到

8

主题

46

帖子

140

积分

注册会员

Rank: 2

积分
140
发表于 2022-9-27 12:08:02 | 显示全部楼层
把修复代码cherry pick过去
回复

使用道具 举报

该用户从未签到

1

主题

13

帖子

69

积分

注册会员

Rank: 2

积分
69
发表于 2022-9-27 12:19:08 | 显示全部楼层
rebase比merge好,我比较喜欢
如果不是所有新开发功能都需要就只能用cherry pick了
具体使用方法可以问度娘
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

快速回复 返回顶部 返回列表