gpt4 book ai didi

diff - 如何读取 .rej 文件,即

转载 作者:行者123 更新时间:2023-12-03 10:26:36 25 4
gpt4 key购买 nike

我在对我的源代码树应用补丁时遇到问题,这不是通常的 -p剥离问题。 patch能够找到要修补的文件。

具体来说,我的问题是如何阅读/解释 .rej文件 patch当它在几个大块头上失败时创建。大部分讨论patch/diff我见过不包括这个。

最佳答案

一个简单的例子:

$ echo -e "line 1\nline 2\nline 3" > a
$ sed -e 's/2/b/' <a >b
$ sed -e 's/2/c/' <a >c
$ diff a b > ab.diff
$ patch c < ab.diff
$ cat c.rej
***************
*** 2
- line 2
--- 2 -----
+ line b

如您所见:旧文件包含第 2 行,新文件应包含第 b 行。但是,它实际上包含行 c(在拒绝文件中不可见)。

其实解决这类问题最简单的办法就是从.diff/.patch文件中取出diff片断,插入到要打补丁的文件中合适的位置,然后手工比对代码,看看是哪几行实际上引起了冲突。

或者 - 或者:获取原始文件(未修改),修补它并在文件上运行三向合并。

关于diff - 如何读取 .rej 文件,即,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/542895/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com