I.MX6 git patch

/**********************************************************************
 *                          I.MX6 git patch
 * 说明:
 *     之前给I.MX6 Android打补丁使用的是shell的patch命令,发现总是出现
 * png图片丢失,具体原因没找到,之后问了Charlie,他提到git diff相关的
 * 内容,查了资料才知道原来那些补丁包是git专用的补丁包。
 *
 *                                    2016-4-26 深圳 南山平山村 曾剑锋
 *********************************************************************/

一、参考文档:
    Git的Patch功能
        http://www.cnblogs.com/y041039/articles/2411600.html

二、补丁生成:
    1. shell命令diff生成标准patch;
    2. git diff生成标准patch;
    3. git format-patch生成的git专用补丁;

三、补丁应用:
    1. shell命令patch应用补丁;
    2. git am应用git专用补丁;

四、示例patch:
    1. 部分内容:
        From fa73e3d15bfa531cf87e21fa4c4bcbbc517c4d9d Mon Sep 17 00:00:00 2001
        From: Romain Sertelon <romain@sertelon.fr>
        Date: Thu, 10 Jan 2013 12:31:43 +0100
        Subject: [PATCH] enhance ethernet handling thanks to Android x86 project
         patch

        See https://groups.google.com/forum/?fromgroups=#!topic/android-x86/YmWjtOLLdDs for patch origin

        Fix the follow issue:
        1. static IP
        2. reboot not work

        Signed-off-by: Jianzheng Zhou <jianzheng.zhou@freescale.com>
        ---
         Android.mk                                         |   1 +
         api/current.txt                                    | 134 +++++
         core/java/android/app/ContextImpl.java             |   9 +
         core/java/android/app/DownloadManager.java         |   6 +
         core/java/android/content/Context.java             |  10 +
         core/java/android/net/EthernetDataTracker.java     |  24 +-
         core/java/android/provider/Settings.java           |  12 +
         core/jni/Android.mk                                |   1 +
         core/jni/AndroidRuntime.cpp                        |   2 +
         core/jni/android_net_ethernet.cpp                  | 421 ++++++++++++++++
         core/res/res/values/config.xml                     |   3 +
         .../java/android/net/ethernet/EthernetDevInfo.aidl |  19 +
         ......
    2. 说明:
        1. 不仅有diff的信息,还有提交者,时间等等;
        2. 仔细一看你会发现,这是个E-mail的文件,你可以直接发送它;
        3. 这种patch,我们要用git am来应用。

五、两种patch的比较(参考文章里的内容):
    1. 兼容性:很明显,git diff生成的Patch兼容性强。如果你在修改的代码的官方版本库不是Git管理的版本库,那么你必须使用git diff生成的patch才能让你的代码被项目的维护人接受。
    2. 除错功能:对于git diff生成的patch,你可以用git apply --check 查看补丁是否能够干净顺利地应用到当前分支中;如果git format-patch 生成的补丁不能打到当前分支,git am会给出提示,并协助你完成打补丁工作,你也可以使用git am -3进行三方合并,详细的做法可以参考git手册或者《Progit》。从这一点上看,两者除错功能都很强。
    3. 版本库信息:由于git format-patch生成的补丁中含有这个补丁开发者的名字,因此在应用补丁时,这个名字会被记录进版本库,显然,这样做是恰当的。因此,目前使用Git的开源社区往往建议大家使用format-patch生成补丁。

 

时间: 2024-09-29 06:28:31

I.MX6 git patch的相关文章

编译CDH HBase源代码并打补丁

写了一篇博客记录编译CDH HBase源代码并打补丁的过程,如有不正确的,欢迎指出! 下载源代码 从Cloudera github上下载最新分支源代码,例如:当前最新分支为cdh4-0.94.6_4.4.0 $ git clone git@github.com:cloudera/hbase.git -b cdh4-0.94.6_4.4.0 cdh4-0.94.6_4.4.0 说明: -b 指定下载哪个分支 最后一个参数指定下载下来的文件名称 添加snappy压缩支持 编译snappy $ svn

[gitlab]搭建私有github仓库

自己机器只有178M内存后面机器实在跑不动了,做到安装MySQL需要的Gems这一步,这里面有几点需要注意一下:1.mysqld在centos中目录/etc/init.d/mysqld start为开启服务 2.本文一直使用sudo命令用名为git账户去创建gitlab  3.需要修改ruby的使用源为淘宝的 4.你的机器内存最好在1G以上,我的只有512m执行bundle命令内存不足.   Gitlab是一个用Ruby on Rails开发的开源项目管理程序,可以通过WEB界面进行访问公开的或

最新版的CentOS 7.0上源码安装虚拟机Xen 4.5教程

貌似这次 CentOS 没有发布 Minimal 安装版,下面的编译安装步骤在 LiveCD 安装版(CentOS-7.0-1406-x86_64-livecd.iso)上完成. 安装需要的软件包 安装完 CentOS 7.0 后第一件事就是启动 SSH 以便能从另外一台机器访问,新版本的 CentOS 引入了有争议的 systemd 进程管理器替代了 Unix 传统的 init 系统.开启服务使用 systemctl 命令: # systemctl start sshd # systemctl

解决Drupal Overlay中margin-top无效问题

   代码如下 复制代码 $('body').addClass('toolbar-drawer').css('paddingTop', Drupal.toolbar.height()); Drupal.toolbar.height() 在jQuery UI 1.8.11 存在bug,不是返回高度值而是对象去了. 解决这个问题的方法是升级jQuery UI 到最新的1.10.2 版本. Update jQuery UI to the latest version (1.10.2) 下载这个补丁,j

ruby on rails在fedora18上install

ruby on rails 在fedora18下的安装 天朝的网络原因,安装不是很顺畅,所以把过程记录下备用 前面下载rubygem什么的都比较快,新建一个project的时候会出问题 gem new my_project  会在bundle_install处卡很久,然后提示说某某东西没装,让装一下.. 大体上参考了两篇文章:   [第一篇帖子,google快照里找到的]在Fedora系统安装Ruby on Rails这几年一直在用AS3.0做开发,已经很久没有接触Linux了.博客上挂着Fed

I.MX6 Ethernet UI patch failed

/*********************************************************************** * I.MX6 Ethernet UI patch failed * 说明: * 最近想要在I.MX6的Android上添加Ethernet UI界面,但是使用NXP提供的 * patch,结果失败了. * * 2016-4-21 深圳 南山平山村 曾剑锋 ************************************************

I.MX6 NXP git 仓库

/************************************************************************* * I.MX6 NXP git 仓库 * 说明: * 有时候要下载一些I.MX6单独的u-boot.kernel版本的时候,可以到这里直接 * 去下. * * 2016-8-25 深圳 南山平山村 曾剑锋 ************************************************************************

I.MX6 Android 5.1.1 下载、编译

/************************************************************************* * I.MX6 Android 5.1.1 下载.编译 * 说明: * 这里要提到的就是4.2版本,编译中断了,你接着编好像是没事的,但是这个 * 5.1.1版本貌似就得从头再编,这个有点郁闷. * * 2016-9-9 深圳 南山平山村 曾剑锋 ***************************************************

I.MX6 KEY_ROW4 can&amp;#39;t as GPIO pin

/********************************************************************** * I.MX6 KEY_ROW4 can't as GPIO pin * 说明: * Tony遇到KEY_ROW4作为GPIO口时无法设置高.低电平问题,后来通过在 * 相关patch中找到方法,很特殊. * * 2016-11-26 深圳 南山平山村 曾剑锋 ***********************************************