我在领养之前正在尝试Git Workflow。在整个发布周期之后,我已经以这个分支树结束了。 (c:commit,m:merge)
master v0 - - - - - - - - - - m1
|
release - c3 - c5 -
| |
development v0 - c1 - c2 - c4 - - - - m2 - c6
版本0之后development
继续c1
和c2
。
创建c2
release
分支后。
git checkout -b release development
development
分支演变为c4
,而release
分支演变为c3
和c5
。
c5
我将release
合并到master
git checkout master
git merge --no-ff release
并进入development
git checkout development
git merge --no-ff release
然后release
分支被删除
git branch -d release
现在只存在master
和development
个分支。我认为旧c3
分支中的c4
和release
提交将从历史记录中删除,我最终将使用线性master
和development
分支。 c3
和c4
包含在m0
和m1
提交中,因此无需保留。
现在在Bitbucket,如果我只检查master
分支,我会得到这棵树:
master v0 - - - - - - - - - m1
| |
| - c3 - c5 -
| |
c1 - c2
虽然我只期望:
master v0 --- m1
这是development
:
- c3 - c5 -
| |
development v0 - c1 - c2 - c4 - m2 - c6
虽然我期待:
development v0 - c1 - c2 - c4 - m2 - c6
有什么方法可以避免这种情况吗?
现在可以修复这种情况吗?