產生 新增和解除安裝patch

2021-09-19 15:54:15 字數 679 閱讀 3117

1、產生patch:

(1)純淨的**a_old,執行make distclean

(2)將a_old拷貝乙份到b_new

(3)將修改的檔案放入b_new中

(4)執行diff -uprn a_old b_new > mypatch,這樣是對多個檔案打patch

對單個檔案打patch:

diff -up orig_file   new_file > mypatch

u 顯示有差異行的前後幾行(上下文), 預設是前後各3行, 這樣, patch中帶有更多的資訊.

-p 顯示**所在的c函式的資訊.

-r 遞迴地對比乙個目錄和它的所有子目錄(即整個目錄樹).

-n 如果某個檔案缺少了, 就當作是空檔案來對比. 如果不使用本選項, 當diff發現舊**或者新**缺少檔案時, 只簡單的提示缺少檔案. 如果使用本選項, 會將新新增的檔案全新列印出來作為新增的部分.

2、新增patch的辦法:

(1)新的**c

(2)cd c

(3)patch -p1 < mypatch

p0表示從mypatch指示的開始路徑新增patch,p1表示忽略mypatch中的第一級目錄,p2表示忽略mypatch中的第二級目錄。

3、解除安裝patch

patch -p(n) -r < 【補丁包路徑,例如mypatch】

生成patch和打patch

單個檔案 diff un ori file mdf file mdf file.patch 生成patc 件 patch p0 mdf file.patch 將patch修改應用到源 patch re p0 mdf file.patch 回退patch的修改多個檔案 diff unr ori dir...

生成patch和打patch總結

git生成patch和打patch 方法1.git diff x mypatch patch p1 mypatch 方法二.單個commit git format patch 1 1bbe3c8c197a35f79bfddaba099270a2e54ea9c7 把patch檔案拷貝到git同目錄下 ...

Linux下生成patch和打patch

通過diff工具生成補丁,patch工具打上補丁.在使用diff之前,你需要保留乙份未修改過的原始碼,然後在其它地方修改原始碼的乙份拷貝.diff對比這兩份原始碼生成patch.修改過的原始碼必須保留原來的檔名,例如,如果你修改原始碼中的a.c檔案,那麼,修改後的檔案還是名為a.c,在修改之前你可以...