2012-08-10 89 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