2012-08-10 86 views
2

直到现在我创建了Linux修补程序与此:如何应用可能使用diff -r命令创建的补丁?

diff -rupN oldDir newDir > fix.patch 

以及与此应用它们(从oldDir):

patch -p1 < fix.patch 

现在,我需要做的紧急补丁别人创建,并在我试试这个方法,我得到:

patch: **** Only garbage was found in the patch input. 

我不知道是怎么产生这个补丁(它有.diff作扩展名)。补丁文件的部分内容是:(只是改变了一些文件/文件夹的名称)

Only in ../oldDir: someFile1.a 
diff -r ../oldDir/someFolder1/SomeFile3 ./someFolder1/SomeFile3 
10c10 
< #someContent1 
--- 
> #someContent1 
Only in ../oldDir/someFolder1/someFolder2: someFile2.a 
diff -r ../wfd_oldDir/someFolder1/someFolder2/someFile3 ./someFolder1/someFolder2/someFile3 
2c2 
< ##### Change the following for your environment: 
--- 
> ##### Change the following for your environment: 
15,16c15,16 
< LIBRARY_LINK =  ar cr 
< LIBRARY_LINK_OPTS = 
--- 
> LIBRARY_LINK =  ar cr 
> LIBRARY_LINK_OPTS = 
36c36 
< $(C_COMPILER) -c $(C_FLAGS) $<  
--- 
> $(C_COMPILER) -c $(C_FLAGS) $< 

......(继续)......

有人能告诉我如何如果可能的话应用此补丁?我搜索了一些,但没有帮助。我也会问那个补丁的人,但这需要几天的时间。

回答

2

检查unix/windows行结尾

+0

...行结尾或其他字符编码问题。例如,用UTF-16编码的补丁将不起作用。 – derobert 2012-08-10 09:05:21

+0

我会检查这一点,但我试图使用“diff -r oldDir newDir”(在Linux中)制作测试补丁,但我仍然收到此消息。 是否可以应用这样创建的补丁? – kliketa 2012-08-10 09:36:54

+0

投票:你是对的窗口换行字符,但补丁是这样做的其他东西:它删除窗口新行......任何建议? – kliketa 2012-08-10 09:39:46