OpenHarmony开发者论坛

标题: OpenHarmony版本升级之提取公共commit [打印本页]

作者: 润开鸿_闻飞    时间: 2024-6-18 21:48
标题: OpenHarmony版本升级之提取公共commit
[md][itopen组织](https://gitee.com/itopen)
1、提供OpenHarmony优雅实用的小工具
2、手把手适配riscv + qemu + linux的三方库移植
3、未来计划riscv + qemu + ohos的三方库移植 + 小程序开发
4、一切拥抱开源,拥抱国产化

我们在基于OpenHarmony开发某一款产品的时候,有时候需要将获取从主线拉出的两个分支之间的差异patch。
本脚本的功能主要是提取两个分支之间的patch,例如下图所示,某个仓基于master分支先后拉去了dev1和dev2两个分支,现在需要提取commit1到commit3之间的patch,本脚本便是实现该功能,基本步骤如下

- 获取dev1的前20000个commit生成文件tmp1
- 获取dev2的前20000个commit生成文件tmp2
- 遍历tmp1和tmp2的commit,找到第一个相同的start_commit后保存,即图中的commit1
- 获取dev2的第一个commit设为end_commit,即图中的commit3
- 基于start_commit和end_commit生成patch

![image.png](https://forums-obs.openharmony.c ... ptrhtp016h15p9z.png "image.png")

### 2.1 脚本配置及运行

脚本下载:[itopen: update_patch](https://gitee.com/itopen/update_patch)
配置好以下的变量后直接运行 `./main.py`即可,脚本中的参数说明

- **path**:代码的路径
- **src_branch**:目标分支,对应图中的dev2
- **dst_branch**:基线分支,对应图中的dev1
- **patch_file**:生成的patch文件的绝对路径
[/md]




欢迎光临 OpenHarmony开发者论坛 (https://forums.openharmony.cn/) Powered by Discuz! X3.5