gpt4 book ai didi

diff - 为什么这个补丁以 1 的模糊度应用,而以 0 的模糊度失败?

转载 作者:行者123 更新时间:2023-12-03 13:43:29 24 4
gpt4 key购买 nike

$ vim patch
Index: toPatch
===================================================================
--- toPatch
+++ toPatch
@@ -2,4 +2,4 @@
*/
-final public class XMLWriter {
+public class XMLWriter {

$ vim toPatch
*/
final public class XMLWriter {

public static float CURRENT_VERSION=2.2f;
$ patch -p0 -ui patch
patching file toPatch
Hunk #1 succeeded at 1 with fuzz 2 (offset -1 lines).

为什么模糊和线偏移?这是一个试图理解差异和补丁的演示案例,因为工具有时/通常似乎无法按预期工作。

最佳答案

Patch 会对 diff 和您的文件的一致性进行一些基本检查,如果这些检查失败,您会得到偏移或模糊。

您有偏移量 -1,因为 patch 需要文件的 diff 匹配行 2--4 的内容。但是,在您的文件中,它们是第 1--3 行。

您有 fuzz>0,因为上下文的第一行(两个空格和一个 */ )与实际文件中的行(一个空格和一个 */ )不匹配。正因为如此,补丁做了第二遍,它忽略了上下文的第一行和最后一行。

这并不能解释为什么您看到 fuzz=2 而不是 1。也许是复制粘贴文件时出错?任何其他想法,任何人?

关于diff - 为什么这个补丁以 1 的模糊度应用,而以 0 的模糊度失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6215787/

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