現在位置: 首頁 > 其他 > 正文

用 diff 建立 patch 檔案上補丁

前陣子修了 nginx 的 bugfix 剛好用上 diff 建立 patch 補丁檔,這邊記錄一下如何用 diff 和 patch 這兩個工具。

 

用 diff 產生 patch 補丁

首先你必須先擁有 新/舊檔案 (file.old / file.new),然後用 diff 比較兩隻檔案的差異

-a 將所有檔案都視為文字檔
-u 輸出預設三行的相同文字行
-r 遞迴比較所有的子目錄
-N 將缺少的檔案視為空檔案

所產生的 file.patch 就是 patch 補丁檔。

 

如何使用 Patch 工具進行補丁更新

由我之前所產生的 patch 檔案當做範例

由於我在產生 patch 檔的時候 nginx_old 和 nginx_new 都不是真實 nginx 原始碼路徑,由 src 這邊開始才是,所以 patch 提供了 -p 的參數

 

到要 patch 的 nginx 原始碼包的根目錄,然後使用 -p1 的參數,略過 nginx_old 和 nginx_new 這一層,這樣就會從 src 底下開始進行 patch 比較

 

 

文章連結: https://shazi.info/%e7%94%a8-diff-%e5%bb%ba%e7%ab%8b-patch-%e6%aa%94%e6%a1%88%e4%b8%8a%e8%a3%9c%e4%b8%81/ | Mr. 沙先生

該文章由 shazi7804 於2017年01月02日發表在 其他 分類下, 你可以發表回文,並在保留原文地址及作者的情况下引用到你的網站或部落格。
原文轉載請註明: 用 diff 建立 patch 檔案上補丁 | Mr. 沙先生
標籤: ,

用 diff 建立 patch 檔案上補丁:給Mr.沙先生一點建議

發表回文