我正在运行Git版本2.18.0.windows.1,并试图手动编辑块(这是我第一次搞砸这个)。我从拆分一个更大的块开始,这是两个块中的第一个。我去编辑第一个块,如下所示:
"老家伙"
@@ -1,8 +1,8 @@
Shopping List
-apples
-bananas
-yogurt
-milk
+red apples
+6 bananas
+vanilla yogurt
+2% milk
wheat bread
cereal
尝试的编辑:
@@ -1,8 +1,8 @@
Shopping List
apples
-bananas
+6 bananas
yogurt
-milk
+2% milk
wheat bread
cereal
...但是当我保存并关闭我的文本编辑器(Atom)时,Git给我以下错误信息:
error: patch fragment without header at line 16: @@ -7,6 +7,6 @@
错误信息中的行号对应于我的 second hunk的行号,所以我猜测,既然我在编辑第一个hunk时更改了行号,那么它一定是把第二个hunk的行号搞砸了。奇怪的是,我正在学习一门课程,而老师似乎没有遇到问题。这是Git版本中的一个潜在错误吗?我在跑还是我错过了什么?
注意:我确保每行前面有适当的空格/+/-,并试图在编辑第一个块时修改行号,但没有效果。
1条答案
按热度按时间wwtsj6pe1#
出现此错误的典型原因是上下文行前缺少一个空格 (请注意,这些行以
-
、+
或空格开头),或者缺少描述正在修改的文件的文件名行。从你的“重现步骤”来看,很明显你缺少了文件名,这将导致标题中提到的错误。通过简单地添加两行文件名:
我使您编辑的版本工作,请参阅:
附言:我注意到你在问题主体中显示的错误涉及到第16行,而这行根本不存在。这意味着它属于另一个不同的diff。无论如何,就你发布的这个问题而言,这是解决方案。