设想:
master
|
\
dev
|
\
feature1
|
|
|
/
|
/
tagV1
|
\
feature2
|
|
/
|
/
tagV2
|
\
fixForV1
|
|
/
|
/
tagV1_1
描述:
- 创建仓库
- 创建和签出分支 dev
- 创建并签出分支 feature1 .. 实现该功能
- 结帐开发并合并功能1,删除功能1
- 结帐主合并开发
- 创建tagV1(将交付给客户)
- 结帐开发
- 创建并签出分支 feature2 .. 实现该功能
- 结帐开发并合并功能2,删除功能2
- 结帐主合并开发
- 创建 tagV2(将交付相同或不同的客户)
- 结帐开发
- 创建并签出分支 fixForV1 .. 实施修复
- 结帐开发并合并 fixForV1
- ???
15… 我们需要合并 tagV1 和 fixForV1 上的提交(不包括 feature2 上的提交)。合并后,我们将创建一个新标签 tagV1_1 并将其交付给客户。
我知道我可以通过挑选 {hash of first commit on fixForV1} ^..{hash of last commit on fixForV1} 来实现这一点。有没有更好的方法来做到这一点?