比如:linux有1.x 和 2.x 版本。(一个库里的两个分支)
有一个bug1,在 1.x中修复了,如何在2.x中合并此bug。
我没有找到合适的方法。
大概如下面:只合并d、e、f。(注:c状态会有一些文件是b2状态没有的。)
[1.x]
|
a->b->c
|
d->e->f
|
[bug1]
[2.x]
|
a2->b2
自己研究出来一个。
git co bug1
git co -b 1.x_bug1 如果直接变基他,在1.x上变基完成后,这个分支就没了。和1.x合并了,所以做出来一个临时的。
git co -b 2.x_bug1 第二个临时的,为的保留原本的。
git rebase 1.x 1.x_bug1 变基成功后,1.x_bug1指向到1.x上。
git rebase 2.x 2.x_bug1
全部完成后,bug1、1.x、2.x都在。
为何不在2.x上 git merge bug1?因为bug1是在1.x上修复的,此时合并,会将截止bug1的所有1.x的文件都合并到2.x中,而我们只需要bug1修改的部分。
不知道,正常的情况,是如何处理这个问题的。
不知道rebase有什么参数,或者其他方法实现这个功能。我对git不太熟悉,也没搜索到。