git - 两个主要分支的 Git 工作流?
问题描述
我需要为以下情况定义一个 Git 工作流:
- 目前有一个版本正在生产中(我们称之为
v1.x
) - 还有一个新版本 (
v2.x
) 将在未来某个时间取代当前版本 - 它们都共享很多功能(到目前为止,大约 80% 的代码是相同的)
- 两个版本都在积极开发中:
- 60% 的新功能对于
v1.x
和v2.x
- 20% 专供
v1.x
, 20% 只供v2.x
- 60% 的新功能对于
- 两个版本也在测试中(产品用户/测试人员)
v1.x
有时需要prod ( ) 的修补程序- 没有高优先级错误被视为正常任务
- 每 1-2 个月发布一个新的 prod 版本(例如
v1.1
->v1.2
)
我们目前的做法是:
- 当作
master
_v1.x
- 为发布创建新分支 (
v1.1
,v1.1
, ...) - 开发通用代码
master
并将其合并到v2.x
v1.x
仅在其中一个分支上为/开发代码,v2.x
不要将这些更改合并到另一个分支
我做了一些研究,发现:
把它们加起来:
你能告诉我所描述的案例可能的 Git 工作流程是什么吗?
树枝应该是什么样子的?
我应该合并什么?我怎样才能合并(cherry-pick?)只提交我想要的而不合并不需要的代码?
解决方案
推荐阅读
- html - 如何在下拉列表的值项列表中禁用选择或灰显特定值(
或者 ) 在 7 号角 - c - 如何在 rust 中使用已编译的 C .so 文件
- python - 如何更改 cv2.boundingRect 的值
- windows - 为什么 git bash 在 PyCharm 上表现得很奇怪?
- c++-winrt - 我们如何在 C++/WinRt 项目中添加事件?
- python - 增加数字并在输入框中显示该数字
- python - 使用 scipy 将 CDF 与真实数据拟合,但 CDF 不是从 0 开始
- c# - 如何在 ASP.NET Core 3.1 中找到 bin 目录?
- outlook - 我可以使用收件人日历中的数据填充 Outlook 可操作邮件吗?
- elasticsearch - Elasticsearch - 检查布尔关键字是否在文本中