Android Branch and master source code merge(patch)

Android Branch and master source code merge(patch)

Environment : Android 4.4.2 merge with Android 4.4.3(with other vendors source code)

1.确定你要merge 到 其它分支的版本号。并在server測获得详细lable 相应的commit 或者 从build 相应的Repo Manifest 中找到要patch 到目标代码的Commit ID

<?

xml version=”1.0″ encoding=”UTF-8″?

> <manifest> <remote fetch=”..” name=”aosp”/> <default remote=”aosp” revision=”main-4.4″ sync-j=”4″/> <project groups=”device,flo” name=”device/asus/deb” revision=”76428ec8349ae0d73455fa4b248bcc7375e08243″ upstream=”main-4.4″/> <project groups=”device,flo” name=”device/asus/flo” revision=”3200b077a36c68e20cafef250ff70b7d36f71409″ upstream=”main-4.4″/> <project groups=”device,flo” name=”device/asus/flo-kernel” revision=”b964b854c791be15514d9c8b950531981a81365c” upstream=”main-4.4″/>

以“devcie, flo” 为例: revision=”76428ec8349ae0d73455fa4b248bcc7375e08243“ 。 76428ec8349ae0d73455fa4b248bcc7375e08243即须要patch的最新commit ID

2.  制作patch 包

   git diff –binary org_commit_id 76428ec8349ae0d73455fa4b248bcc7375e08243 > device-flo.patch 就可以生成从org_commit_id 到 76428ec8349ae0d73455fa4b248bcc7375e08243 之间代码变化的patch

3. 检測代码是否冲突

     进入须要patch的源码文件夹,运行 git apply –check  device-flo.patch

    假设有冲突将提示error , 否则未有错误提示 。

4.  将能够patch的内容patch到目标源码,并生成冲突记录

    git apply  –reject devcie-flo.patch

    如 A 文件冲突,则会在A 文件相应的文件夹下生成A.rej 文件。 打开A.rej 文件能够查看详细的错误信息。

5.  手工Merge 冲突内容

     能够借助meld 工具将目标文件夹中的源码与patch 的代码进行比較。依据代码逻辑Merge代码。

    

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/109159.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • winhex哈希值校验_文件的哈希值不在指定的目录中

    winhex哈希值校验_文件的哈希值不在指定的目录中Certutil是一个windows预装的CLI程序,主要作用是转储和显示证书颁发机构(CA),配置信息,证书服务,CA组件的备份和还原以及验证证书、密钥对和证书链,它作为证书服务的一部分安装。可用于校验文件MD5、SHA1、SHA256,下载恶意文件和免杀。这里记录如何使用这个程序校验文件,网上很多资源的下载很多都会提供文件的md5,SHA256等等之类的哈希值,便于下载者校验文件是否…

    2022年9月12日
    0
  • java的spi机制_java编程思想第四版

    java的spi机制_java编程思想第四版What?SPI机制(ServiceProviderInterface)其实源自服务提供者框架(ServiceProviderFramework,参考【EffectiveJava】page6),是一种将服务接口与服务实现分离以达到解耦、大大提升了程序可扩展性的机制。引入服务提供者就是引入了spi接口的实现者,通过本地的注册发现获取到具体的实现类,轻松可插拔典型实例:jdbc的设…

    2022年10月22日
    0
  • Linux下的C编程实战

    Linux下的C编程实战(一)――开发平台搭建1.引言Linux操作系统在服务器领域的应用和普及已经有较长的历史,这源于它的开源特点以及其超越Windows的安全性和稳定性。而近年来,Linu

    2021年12月25日
    37
  • java scp传输文件

    java scp传输文件&lt;dependency&gt;&lt;groupId&gt;ch.ethz.ganymed&lt;/groupId&gt;&lt;artifactId&gt;ganymed-ssh2&lt;/artifactId&gt;&lt;version&gt;build210&lt;/version&gt;&lt;/dependency&a

    2022年8月22日
    4
  • 电脑安装winpe_北京科兴中维新冠疫苗最新消息

    电脑安装winpe_北京科兴中维新冠疫苗最新消息在WinPE安装操作系统,最好用虚拟光驱打开安装镜像文件,或者把镜像文件解压后直接安装。最好不要用工具盘里所带的一键安装,复制等等功能,因为这些功能往往会安装一些其他的附带功能,不是清洁版的。转载于:https://www.cnblogs.com/cuihongyu3503319/p/4657993.html…

    2025年5月28日
    0
  • python打包exe的方法

    cxfreeze,pyinstaller,py2exe三种方式cxfreeze最简单,安装后脚本在python_home\Scripts下面执行pythoncxfreeze全路径要打包的py文件 –target-dir

    2022年4月8日
    25

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号