linux 内存扩容能自动识别吗,linux - 能够识别差异的编辑器,可以处理补丁块编辑(包括删除行)吗? - 堆栈内存溢出...

说我有以下“原始”文件:

$ cat test-orig.h

int varA;

int varB;

int varC;

int varD;

int varE;

...并说我已将这些更改放入“新”文件中:

$ cat test-newmodified.h

int varA;

int varB;

int varC;

// a couple of lines

// of useless comments

int var_extra1;

int var_extra2;

int varD;

int varE;

那么两者之间的差异将是:

$ diff -Naur test-orig.h test-newmodified.h | tee test.patch

--- test-orig.h 2013-07-18 19:21:25.741027138 +0200

+++ test-newmodified.h 2013-07-18 19:21:19.916998200 +0200

@@ -1,5 +1,9 @@

int varA;

int varB;

int varC;

+// a couple of lines

+// of useless comments

+int var_extra1;

+int var_extra2;

int varD;

int varE;

假设然后,我获得了一个补丁文件(带有许多块),并且我想删除“无用注释行”。 从diff生成的补丁文件中删除整个块通常很容易-但如果我只想删除一些行,则必须修改diff计数器( @@ -1,5 +1,9 @@上方)太。 说,如果文件中的注释行被删除,则差异将为:

$ diff -Naur test-orig.h test-newmodified-nc.h

--- test-orig.h 2013-07-18 19:21:25.741027138 +0200

+++ test-newmodified-nc.h 2013-07-18 19:26:30.898540270 +0200

@@ -1,5 +1,7 @@

int varA;

int varB;

int varC;

+int var_extra1;

+int var_extra2;

int varD;

int varE;

...也就是说,与意见的计数器, @@ -1,5 +1,9 @@ -现在成了,没有注释, @@ -1,5 +1,7 @@ 。

如果我只是从补丁test.patch删除注释行(并将该编辑另存为test-edit.patch ),并且不更新计数器,那么我得到:

$ patch -p0

patching file test-orig.h

patch: **** malformed patch at line 10:

...并且没有应用这样的补丁。 如果我只是将test-edit.patch的+1,9更改为+1.7 ,那么它将完全适用:

$ patch -p0

patching file test-orig.h

...和test-orig.h已按预期更改(没有注释行)。

因此,给定一个补丁文件,其中包含与该文件有关的所有大块-是否有一个(diff) diff (至少是统一的diff)的(GUI)(文本)编辑器,例如:当大块中的行(或整个行)块)将被删除,它将自动更新差异计数器-这样编辑后的补丁文件仍将干净地应用于原始文件吗?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值