quilt - 制作patch的工具

在尝试为openwrt做一个patch时,查到这个工具。openwrt官方已经有很详细的文档对步骤进行说明了。

quilt并不是专为openwrt的开发工具。quilt最早由内核开发者Andrew Morton ,为了给Linux内核更容易的打补丁。

这里有几篇文章,可以很好的说明怎么使用quilt:

  1. quilt-doc
  2. 用quilt给openwrt制作补丁Working with patches
  3. 用quilt给linux kernel制作补丁 Managing Your Patches With quilt

当然,对于用git管理起来的linux kernel或其他source来说,git本身是更好的工具。

quilt的安装

sudo apt-get install quilt

quilt本身是一个脚本,上面这一句把它安装于/usb/bin/quilt

quilt 的执行方式是:

quilt command ...

command有如下选择:

add       fold    new       remove    top
annotate fork next rename unapplied
applied graph patches revert upgrade
delete grep pop series
diff header previous setup
edit import push shell
files mail refresh snapshot

其中每一个command都是/usr/share/quilt/目录下的一个以command命名的脚本。

quilt基本使用

  • test目录下有两个文件file1.c file1.h

  • 创建一个新patch

    quilt new 0001-test.patch

  • 把文件加入到topmost patch

    quilt add file1.c

接下来对int.c的修改都会记录到topmost patch中去。

  • 编辑文件

    使用编辑器修改源文件,也可以调用quilt的默认编译器来修改int.c。

    quilt edit file1.c

  • 更新topmost patch

    quilt refresh

使用了这条命令之后,修改才会写入到0001-test.patch中

  • 继续新建一个patch

    quilt new 0002-test.patch

此时topmost变成了0002-test.patch。

现在使用quilt files查看,此patch下没有跟踪文件

  • 添加两个文件file1.c file1.h

    quilt add file1.c file1.h

现在使用quilt files查看,此patch跟踪了两个文件。编辑它们。

  • pop/push

回退到某个patch

$ quilt pop 0001-test.patch
Removing patch 0002-test.patch
Restoring file1.c
Restoring file1.h Now at patch 0001-test.patch

这个命令之后,0001-test.patch将变为topmost patch。所有的修改退回到这个点上。

$ quilt push 0002-test.patch
Applying patch 0002-test.patch
patching file file1.c
patching file file1.h Now at patch 0002-test.patch

push命令使用0002-test.patch。

quilt - 制作patch的工具的更多相关文章

  1. 阿里UX矢量图标库–最强大的矢量图标库(Icon font制作力荐工具)

    继前面介绍过ICON-FONT的制作后,找了几个ICON库都是国外的今天偶然发现阿里巴巴的图标矢量库,www.iconfont.cn用了之后感觉很强大,丰富的图标库(集合阿里妈妈&淘宝的图标库 ...

  2. 使用和制作patch文件

    使用和制作patch文件 发表时间: 2007-2-13 20:57    作者: superuser    来源: 迷茫人 字体: 小 中 大 | 打印 原文http://www.linuxsir. ...

  3. wxPython制作跑monkey工具(python3)-带事件百分比显示界面

    一. wxPython制作跑monkey工具(python3)-带事件百分比显示界面  源代码 Run Monkey.py #!/usr/bin/env python import wx import ...

  4. wxPython制作跑monkey工具(python3)-带显示设备列表界面

    一. wxPython制作跑monkey工具(python3)-带显示设备列表界面  源代码 Run Monkey.py #!/usr/bin/env python import wx import ...

  5. wxPython制作跑monkey工具(python3)

    一. wxPython制作跑monkey工具python文件源代码内容Run Monkey.py如下: #!/usr/bin/env python import wx import os import ...

  6. 使用python制作时间戳转换工具

    使用python制作时间戳转换工具 python 时间戳转日期 日期转时间戳 前言:作为一个程序员一般情况下,json和时间戳是常用的两个工具,我咨询过很多个朋友,他们一般都是通过在线工具对json进 ...

  7. H5类似易企秀/编辑器/页面制作/开发/生成工具/软件/源码/授权

    代码地址如下:http://www.demodashi.com/demo/14960.html 项目简介 H5DS (HTML5 Design software) 这是一款基于WEB的 H5制作工具. ...

  8. WPF学习12:基于MVVM Light 制作图形编辑工具(3)

    本文是WPF学习11:基于MVVM Light 制作图形编辑工具(2)的后续 这一次的目标是完成 两个任务. 本节完成后的效果: 本文分为三个部分: 1.对之前代码不合理的地方重新设计. 2.图形可选 ...

  9. WPF学习11:基于MVVM Light 制作图形编辑工具(2)

    本文是WPF学习10:基于MVVM Light 制作图形编辑工具(1)的后续 这一次的目标是完成 两个任务. 画布 效果: 画布上,选择的方案是:直接以Image作为画布,使用RenderTarget ...

随机推荐

  1. loj2002 「SDOI2017」序列计数

    水题 #include <iostream> #include <cstring> #include <cstdio> using namespace std; t ...

  2. Silverlight客户端加载DWG图纸方案

    前段时间一直再研究怎么才能在Silverlight客户端加载 DWG图纸,ArcGIS API For Silverlight中可以加载Shp文件,但是不能加载DWG,最后想出了一个方法步骤如下: 1 ...

  3. 大数据学习——hive的sql练习题

    ABC三个hive表 每个表中都只有一列int类型且列名相同,求三个表中互不重复的数 create table a(age int) row format delimited fields termi ...

  4. linux无人值守安装介绍(一)

    一.术语解释 PXE(Pre-boot ExecutionEnvironment)是由Intel设计的协议,它可以使计算机通过网络而不是从本地硬盘.光驱等设备启动.现代的网卡,一般都内嵌支持PXE的R ...

  5. NYOJ 995 硬币找零

    硬币找零 时间限制:1000 ms  |  内存限制:65535 KB 难度:3   描述 在现实生活中,我们经常遇到硬币找零的问题,例如,在发工资时,财务人员就需要计算最少的找零硬币数,以便他们能从 ...

  6. 86. Spring Boot集成ActiveMQ【从零开始学Spring Boot】

    在Spring Boot中集成ActiveMQ相对还是比较简单的,都不需要安装什么服务,默认使用内存的activeMQ,当然配合ActiveMQ Server会更好.在这里我们简单介绍怎么使用,本节主 ...

  7. Nova 组件详解

    本节开始,我们将详细讲解 Nova 的各个子服务. 前面架构概览一节知道 Nova 有若干 nova-* 的子服务,下面我们将依次学习最重要的几个.今天先讨论 nova-api 和 nova-cond ...

  8. Codevs1062路由选择

    /* #include<iostream> #include<cstdio> #include<cstring> #define MAXN 301 using na ...

  9. 2018.11.6 PION 模拟赛

    期望:100 + 40 + 50 = 190 实际:60 + 10 + 50 = 120 考得好炸啊!!T1数组开小了炸掉40,T2用 int 读入 long long ,int存储 long lon ...

  10. Google的JSON风格指南

    官网:https://google.github.io/styleguide/jsoncstyleguide.xml 中文版:https://github.com/darcyliu/google-st ...