Linux 制作补丁 打补丁 撤销补丁
1、制作补丁
diff - 逐行比较文件
格式
diff 参数 旧文件/旧文件夹 新文件/新文件夹
-N 将不存在的文件看作是空的
-a 将所有文件都视为文本文件
-u 以合并的方式来显示文件内容的不同
-r 以递归地方式比较所有子目录
// 比较Test2在Test1版本上的更新并输出
diff -Naru Test1 Test2
// 比较Test2在Test1版本上的更新并输出到文件diff.patch
diff -Naru Test1 Test2 > diff.patch
aaron@build:~/test$ cat .c abcdefg
hijklmn
opq
rst
uvw
xyz aaron@build:~/test$ cat .c abcdefg
ABCDEFG
hijklmn
oq
rst
UVW
xyz aaron@build:~/test$ diff -Naru .c .c
--- .c -- ::03.687450043 -
+++ .c -- ::19.867441496 -
@@ -, +, @@ - //删除此行
+ //增加此行,等于将67890改为67908
abcdefg
+ABCDEFG //新增加
hijklmn
-opq
+oq
rst
-uvw
+UVW
xyz aaron@build:~/test$ diff -Naru .c .c > diff.patch aaron@build:~/test$ ls
.c .c diff.patch aaron@build:~/test$ cat diff.patch
--- .c -- ::03.687450043 -
+++ .c -- ::19.867441496 -
@@ -, +, @@ -
+
abcdefg
+ABCDEFG
hijklmn
-opq
+oq
rst
-uvw
+UVW
xyz
2、打补丁
patch - 将一个diff文件应用到一个原始文件
格式
patch 参数 < 补丁
-b 备份原始文件,打补丁时,会复制或者重命名原始文件来备份
-R 撤销补丁
-p(num) 表示忽略num层路径
diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
假设补丁头是上面一行
如果使用 -p0,就从 / 目录开始,也就是从 kernel 目录开始;
如果使用 -p1,就从 drivers 目录开始,也就是从 kernel/drivers 目录开始,忽略 kernel 当前目录下的差异文件;
以此类推。
// 将上面生成的补丁diff.patch打到1.c上,就和2.c相同
aaron@build:~/test$ cat .c abcdefg
hijklmn
opq
rst
uvw
xyz aaron@build:~/test$ patch -bp0 < diff.patch
patching file .c aaron@build:~/test$ cat .c abcdefg
ABCDEFG
hijklmn
oq
rst
UVW
xyz aaron@build:~/test$ ls
.c .c.orig .c diff.patch // 1.c.orig备份文件 aaron@build:~/test$ rm .c.orig // 确定打补丁成功后删除备份文件
3、撤销补丁
patch - 将一个diff文件应用到一个原始文件
格式
patch 参数 < 补丁
-R 撤销已打的补丁
// 将上一步打的补丁撤销,还原1.c的初始模样
aaron@build:~/test$ cat .c abcdefg
ABCDEFG
hijklmn
oq
rst
UVW
xyz aaron@build:~/test$ patch -Rp0 < diff.patch
patching file .c aaron@build:~/test$ cat .c abcdefg
hijklmn
opq
rst
uvw
xyz
Linux 制作补丁 打补丁 撤销补丁的更多相关文章
- Linux 补丁 的简单使用: 制作补丁,打补丁,撤销补丁
背景: 补丁的使用对于嵌入式开发人员来说,在维护或者开发中都比较方便. 制作补丁: diff - 逐行比较文件. 格式: diff 参数 旧文件/旧文件夹 新文件/新文件夹 (注意顺序 新旧文件夹 ...
- 在Linux下的找不同-打补丁
Q:为什么要找不同,为什么要打补丁? A: 在Linux应用中,作为DBA,我们知道MySQL跑在Linux系统之上,数据库最重要的追求就是性能,"稳"是重中之重,所以不能动不动就 ...
- weblogic补丁下载与安装补丁的方法
文章目录1.根据漏洞报告下载补丁2.补丁包上传解压到Linux3.关于OPatch4.安装补丁4.1单个补丁安装4.2查看已安装的补丁4.3多个补丁安装4.4单个补丁回滚4.5多个补丁回滚4.6验证补 ...
- linux制作RPM包
制作rpm包 1.制作流程1.1 前期工作 1)创建打包用的目录rpmbuild/{BUILD,SPECS,RPMS, SOURCES,SRPMS} 建议使用普通用户,在用户家目录中创建 2)确定好制 ...
- python在linux制作图形界面(snack)
snack是一个用于在linux制作图形界面(GUI)的模块,该模块由c编写,而且redhat的系统都自带这个模块. 1.获取模块 虽然redhat系统会自带这个模块,但是直接去import snac ...
- win10 + linux 制作双系统教程(我本身是win10系统)
1.制作启动U盘 准备工作: .linux镜像 .硬盘空余空间>8G,越大越好 .制作启动U盘的软件 .最好3.0U盘一个>4G 下载启动软件的工具(UItraIOS制作的U盘启动盘无法安 ...
- linux vim vi编辑时撤销输入操作
linux vim vi编辑时撤销输入操作 1,esc退出输入状态 2,u 撤销上次操作 3,ctrl+r 恢复撤销
- diff生成补丁与patch打补丁
1.使用diff生成补丁: diff是Linux下的文件比较命令,参数这里就不说了,直接man一下就行了,不仅可以比较文件,也可以比较两个目录,并且可以将不同之处生成补丁文件,其实就是一种打补丁的命令 ...
- Win10 PC一周年更新正式版14393.447 32位/64位更新补丁KB3200970下载 Flash补丁Kb3202790下载
微软在今天凌晨推送了Win10 PC一周年更新正式版14393.447,本次更新补丁代号为KB3200970,面向Win10一周年更新正式版的PC用户. 更新日志 • 提升了多媒体音频.远程桌面以及I ...
随机推荐
- 08day03
一.eclipse的使用 可能是全宇宙最好用的IDE debug 查看执行过程 查看源码 二.模块的常用方法 __name__ __file__ __doc__ 三.函数 参数 参数默认值 可变参数 ...
- 【Error】IOError: [Errno 22] invalid mode
使用python打开或写入文件时会报以下错误IOError: [Errno 22] invalid mode,比如打开f:\nnpm.txt时,可以在地址前面加上r或R,即r'f:\nnpm.txt' ...
- 共用y轴的双图形绘制
实现这种形式的图形,可通过matplotlib和pandas的实现,相比下pandas实现方便的多. 我数据分析的时候主要是stacked bar.bar和line形式的放在一张图上.stacked ...
- 【微软混合现实】开始使用Unity-第一章:创建一个新的项目
使用Unity开发App,第一步需要创建一个项目.项目具有一系列组织好文件夹,其中最重要的是你的附件文件夹(Assets folder).在这个文件夹中,存储了从其他工具中创建的数字内容,比如Maya ...
- spring --解析自定义注解SpringAOP(配合@Aspect)
1:首先,声明自定义注解 @Retention(RetentionPolicy.RUNTIME) @Target({ElementType.METHOD}) public @interface DtT ...
- 通过消费者和生产者的多线程程序,了解Java的wait()和notify()用法
仓库类 public class Store { private int size = 0;//当前容量 private final int MAX = 10;//最大容量 //向仓库中增加货物 pu ...
- 一、html <!doctype>标签
一.html <!doctype>标签 定义和用法 <!DOCTYPE> 声明必须是 HTML 文档的第一行,位于 <html> 标签之前. <!DOCTYP ...
- jQuery实现点击式选项卡
参考:jQuery权威指南jQuery初步jQuery选择器jQuery操作domjQuery操作dom事件jQuery插件jQuery操作AjaxjQuery动画与特效jQuery实现导航栏jQue ...
- C# Http方式下载文件到本地类
直接上代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; using S ...
- New Concept English three (24)
33 72 We often read in novels how a seemingly respectable person or family has some terrible secret ...