git add --patch大块版:如何删除上下文行?

时间:2019-06-20 21:22:12

标签: git git-add format-patch

我目前遇到以下情况:

# Manual hunk edit mode -- see bottom for a quick guide.
@@ -10130,7 +10160,22 @@ function myGreatFunc(param1, param2

             let a = funcA(b, c);
             if(funcB(a, d.a.a) >= e) {
-                if(d.b === undefined
+                let f = c * parseInt(g.a[b].a);
+                if(h !== null
+                 && (h.a.a >= c
+                  && h.a.b === b
+                  || funcA(h.a.b, h.a.a) >= a
+                 )
+                ) f = 0;
+/*                if(b === 'a'
+                 && c === 1
+                 && d.a.name === 'b'
+                 && (d.c.a.includes('c')
+                  || d.c.a.includes('d')
+                 )
+                ) console.log('e', f);*/
+
+/*                if(d.b === undefined
                  || d.b.a > c * parseInt(g.a[b].a)
                  || d.b.a === c * parseInt(g.a[b].a)
                   && d.b.b < a

目标是删除所有评论。

这里的问题出在块的末尾,它仅包括块注释的开头,而不是结尾。因此,它将最后三行保留为上下文,而我也希望将其删除。

尝试n°1

保留原始上下文行,因此无需from-file-range进行修改

# Manual hunk edit mode -- see bottom for a quick guide.
@@ -10130,7 +10160,11 @@ function myGreatFunc(param1, param2

             let a = funcA(b, c);
             if(funcB(a, d.a.a) >= e) {
-                if(d.b === undefined
+                let f = c * parseInt(g.a[b].a);
+                if(h !== null
+                 && (h.a.a >= c
+                  && h.a.b === b
+                  || funcA(h.a.b, h.a.a) >= a
+                 )
+                ) f = 0;
+
-                 || d.b.a > c * parseInt(g.a[b].a)
-                 || d.b.a === c * parseInt(g.a[b].a)
-                  && d.b.b < a

注意:已正确{strong>替换了(而不是仅预先添加),以尝试删除每个要删除的上下文行的前导空格。

尝试n°2

删除原始上下文行

-

结果

两次尝试均遇到:

# Manual hunk edit mode -- see bottom for a quick guide.
@@ -10130,4 +10160,11 @@ function myGreatFunc(param1, param2

             let a = funcA(b, c);
             if(funcB(a, d.a.a) >= e) {
-                if(d.b === undefined
+                let f = c * parseInt(g.a[b].a);
+                if(h !== null
+                 && (h.a.a >= c
+                  && h.a.b === b
+                  || funcA(h.a.b, h.a.a) >= a
+                 )
+                ) f = 0;
+

注释

使用error: patch failed: myFile.html:10130 error: myFile.html: patch does not apply Your edited hunk does not apply. Edit again (saying "no" discards!) [y/n]?

如何编辑该大块头以获得受欢迎的结果?

0 个答案:

没有答案