Orange GB 8260上,经历过一次1.x到3.x的重大升版(主要是qualcomm改动),当时采取的策略是git merge + 人工处理conflict
于是乎,埋下了无数地雷。。。
以webkit为例,升版前git tree如下
d (ours)
|
c (qualcomm 1.x)
|
b (qualcomm common)
|
a (android 2.3.6)
3.x 版本的git tree如下
e (qualcomm 3.x)
|
b (qualcomm common)
|
a (android 2.3.6)
使用git merge后,代码就变成同时包含1.x & 3.x的怪物混合体 @@
改善方向,未来面对这样大升版,可以考虑以下方案
1. 将代码reset为qualcomm 3.x release
2. 使用cherry-pick逐一导入我们的改动 (可能需要大量人力、时间)