patch文件如何合并到源码目录中

例如我们有一个a.patch文件,我们先看看这个patch文件是在哪个目录下生成的

来看用户的home目录下的 a.patch 中的部分内容

--- a/drivers/misc/mediatek/lens/main2/common/lc898212xdaf_f/LC898212XDAF_F.c
+++ b/drivers/misc/mediatek/lens/main2/common/lc898212xdaf_f/LC898212XDAF_F.c

由上面的可知,这个patch是在内核目录下生成的,因此,我们进入这个目录下

ubuntu@flm:~/$ cd ~/android/kernel-4.4/

然后执行

ubuntu@flm:~/android/kernel-4.4/$ git am ~/a.patch

发现出现报错

Patch format detection failed.

原因是因为这个a.patch文件是用git diff 命令生成的,所以得用git apply 命令来合并

ubuntu@flm: git apply ~/a.patch

如果是用patch打出来的patch,则使用git am patch文件

如果有时候我们切换版本后又编译发生下面的错误,那么我们可能需要删除编译的文件后再重新编译

error: patch failed  warning:xxxx.cpp has type 100755, expected 100644


rm -fr out

重新make

注意,用git apply的话是不需要自己建仓库的

你可能感兴趣的:(工具)