我想将.patch文件应用于一个文件。 我把两个放在同一个文件夹中,然后我尝试了这个
trinity@Zion ~/Desktop $ patch -i lalala.patch
patching file install.sub
patch unexpectedly ends in middle of line
Hunk #1 FAILED at 1562.
1 out of 1 hunk FAILED -- saving rejects to file install.sub.rej
但正如您在输出中看到的那样,它失败了。 install.sub.rej的内容基本上是lalala.patch的所有代码 我尝试了类似的命令,但我得到了相同的结果。我想我做错了。
我知道应用补丁只是一个命令,但我很失落。如果有人告诉我命令或直接修补文件(并告诉我命令)谢谢
原始文件 http://pastebin.com/raw.php?i=PKru8m5r 补丁: http://pastebin.com/raw.php?i=kkMUHtj8
答案 0 :(得分:1)
你的补丁命令没问题。这是补丁文件本身提出的问题(至少对我来说(Kubuntu 11.04),看着你在评论中给出的链接,所有补丁文件包含相同的错误......?!)
要为我解决问题,请在补丁文件中找到以下行:
@@ -1562,6 +1562,8 @@ set_timezone() {
并删除set_timezone() {
部分,您描述的错误消失了。
这部分显示了进行更改的功能。查看您在评论中提供的页面上的补丁时,会显示所有补丁都包含此额外信息。据我所知(但我不是补丁大师,所以请纠正我)这是默认的补丁命令不接受的。
(不幸的是,你的补丁仍然失败,补丁文件中的预期行与原始文件相比不匹配......)
答案 1 :(得分:0)
很可能,生成的补丁是“正确的”,但请仔细检查它的编码并确保它是 UTF-8。