`

diff和patch说明

阅读更多

先参见wiki的附件和一个网上的说明(转):见附件。

 

说明两点:

1、使用diff –u是通用格式(有---+++的,patch使用此格式),否则是><的形式。

 

2、举个例子,说明patch文件中的内容含义:

--- lib/inets/src/http_client/http_uri.erl.orig   2009-03-12 13:32:39.000000000 +0100

+++ lib/inets/src/http_client/http_uri.erl2009-04-28 23:22:59.215622656 +0200

@@ -61,7 +61,7 @@

          Split = {_, _} ->

             Split;

          URIPart ->

-             case split_uri(URIPart, "\\?", URIPart, 1, 0) of

+            case split_uri(URIPart, "?", URIPart, 1, 0) of

                 Split = {_, _} ->

                    Split;

                 URIPart ->

@@ -76,13 +76,13 @@

 

 

 parse_path_query(PathQuery) ->

-    {Path, Query} =  split_uri(PathQuery, "\\?", {PathQuery, ""}, 1, 0),

+    {Path, Query} =  split_uri(PathQuery, "?", {PathQuery, ""}, 1, 0),

     {path(Path), Query}.

    

 

 parse_host_port(Scheme,"[" ++ HostPort) -> %ipv6

     DefaultPort = default_port(Scheme),

-    {Host, ColonPort} = split_uri(HostPort, "\\]", {HostPort, ""}, 1, 1),

+    {Host, ColonPort} = split_uri(HostPort, "]", {HostPort, ""}, 1, 1),

     {_, Port} = split_uri(ColonPort, ":", {"", DefaultPort}, 0, 1),

     {Host, int_port(Port)};

 

减号表示原文件,加号表示新文件

@@ -61,7 +61,7 @@

-61,7表示原文件第61行开始变,变了7行;+61,7表示新文件第61行开始变,变了7行。

 

 

分享到:
评论

相关推荐

    如何使用diff和patch

    1) 在数学上来说:diff/patch,diff是对2个集合求差,patch是求和  diff A B &gt;C ,一般A是原始文件,B是修改后的文件,C称为A的补丁文件。  patch A C 就能得到B, 这一步叫做对A打上了B的名字为C的补丁。  patch ...

    diff-match-patch.rs:用于生锈的diff-match-patch

    在 Rust 语言中,`diff-match-patch.rs` 是对这个算法的一个实现,为 Rust 开发者提供了处理文本差异和合并的功能。 在 Rust 项目中,`diff-match-patch.rs` 提供的主要功能包括: 1. **差异计算(Diff)**:此库...

    diff(Java实现)

    在IT领域,`diff`是一种广泛使用的工具...总的来说,`diff`是一个强大的工具,对于理解和管理文本变化至关重要。在Java中,通过利用现有的库或自定义实现,我们可以轻松地集成`diff`功能,以支持软件开发中的多种需求。

    beandiff:bean diff 和 patch,用于生成 bean

    先diff生成patch,然后marshal,通过网络发过去,另一端applyPatch生效。 目的 客户端订阅服务器视图后,如果服务器有变化,自动diff,然后同步patch过去。 实现 对primitive type,bean,map,set算diff都简单 对list...

    jsdiff一个javascript的文本差异比较实现

    4. **三种比较模式**:包括`diff`, `patch`, 和 `apply`。`diff`用于获取两个文本的差异,`patch`用于根据差异生成补丁,`apply`则用于将补丁应用到原始文本上。 **API介绍** 1. **diffChars**:对比两个字符序列...

    ace-diff:基于google-diff-match-patch构建的Ace编辑器的差异包装器

    演示说明了一些不同的配置和样式。 希望他们能给您大致的了解它的作用和作用方式。特征兼容任何Ace / Brace编辑器模式或主题将实时更改适应一个或两个编辑器左/右编辑器的只读选项控制差异的组合方式允许用户将差异...

    详解Linux patch命令参数及用法

    说到patch命令,就不得不提到diff命令,也就是制作patch的必要工具。diff命令,在制作patch文件的时候,基本上只需要使用到diff -Nau 这个参数,如果比较的是文件夹,还要加上-r参数,所以一般直接使用Naur参数。 ...

    Linux命令学习手册-patch命令

    生成的补丁文件`prj1.patch`将会包含`prj0`和`prj1`之间所有的文件和目录差异。 **应用多文件和目录的补丁** 最后,我们可以通过`patch`命令来应用这个补丁文件,更新`prj0`到`prj1`的状态: ```bash $ patch -p0 ...

    Perl5.8_patch

    通常,这涉及到获取补丁文件(如diff格式),使用patch命令将补丁应用到源代码上,然后重新编译和安装更新后的代码。此外,开发者还需要关注Perl的版本控制,因为不同的补丁可能适用于不同的Perl版本。 总的来说,...

    diff-match.rar

    压缩包内的"新建文本文档.txt"可能包含了使用diff-match-patch算法的说明或示例数据。这个算法是由谷歌开发的,旨在提供高效、准确的文本差异计算、匹配和应用功能。它不仅能够找出文本差异,还能生成合并冲突解决...

    svn安装与patch文件应用

    - **生成Patch文件**: 使用 `TortoiseSVN` 的 `Export` 功能导出文件夹,然后使用 `Diff` 工具对比两个版本之间的差异。 - **应用Patch文件**: 使用 `TortoiseSVN` 的 `Apply Patch` 功能将差异应用到目标文件夹。 ...

    TextModelAnalyze:文本模板解析工具,基于 google-diff-match-patch 开发

    TextModelAnalyze是一款文本模板解析工具,其核心是利用了Google的开源库...通过理解和掌握TextModelAnalyze及其依赖的diff-match-patch库,开发者可以在Java项目中实现高效的文本处理,提升软件的灵活性和可维护性。

    patch (cpp).rar

    同时,你还需要理解补丁文件的格式,通常是.diff或.patch文件,可以使用命令行工具如patch或者集成开发环境(IDE)内的功能来应用补丁。 总之,"patch (cpp).rar"涉及了C++编程、代码维护和更新等多个方面,涵盖的...

    Diff.swift:Swift中最快的Diff和补丁库。 包括UICollectionViewUITableView实用程序

    文献资料文档可特征Diff.swift支持三种类型的操作: 插入删除项移动(使用ExtendedDiff ) Patch任意排序UITableView和UICollectionView实用程序(如果这只是您想要的,请) :high_voltage:区分包含集合的集合(使用...

    zhcon-0.2.5.tar.gz和zhcon-0.2.5-to-0.2.6.diff.gz

    需要下载的文件有两个:zhcon-0.2.5.tar.gz和zhcon-0.2.5-to-0.2.6.diff.gz。 下载地址:http://sourceforge.net/project/showfiles.php?group_id=27400 windows下载(先用WinRAR解压得到两个文件):...

    ttcp patch

    2. **ttcp_patch**:这是一个补丁文件,通常采用diff格式,记录了源代码的修改。应用这个补丁到Linux内核源代码上,可以将ttcp的改进集成到内核中。补丁文件会显示哪些文件被修改,哪些行被添加、删除或修改,这对于...

    android增量升级,附说明

    本文将深入探讨Android增量升级的实现机制,以及如何生成patch文件和与NDK相关的头文件。 一、增量升级原理 1. 对比差异:增量升级的基础是找出两个版本间的文件差异。这通常通过文件比较工具(如rsync或diff)来...

    j-sim补丁patch1.3-4.tar

    1. README-patch1.3-4.txt:这是一个文档,通常包含补丁的详细说明、应用指南以及任何重要的注意事项。开发者或用户在应用补丁前应仔细阅读此文件,以了解补丁的意图和应用步骤。 2. src:这是一个源代码目录,其中...

    ns-2.26-gcc410.patch.rar_gcc 410 for ns 2.26_ns-2.26-gcc410.patc

    通常,补丁文件(如.diff或.patch)用于修改源代码,以解决已知的问题或添加新的功能。用户需要将这个补丁应用到ns-2.26的源代码上,然后使用GCC 4.1.0编译,以创建一个可以正常运行的二进制文件。 在实际操作中,...

Global site tag (gtag.js) - Google Analytics