透過diff工具生成補丁,patch工具打上補丁.在使用diff之前,你需要保留一份未修改過的原始碼,然後在其它地方修改原始碼的一份複製.diff對比這兩份原始碼生成patch.修改過的原始碼必須保留原來的檔名,例如,如果你修改原始碼中的a.c檔案,那麼,修改後的檔案還是名為a.c,在修改之前你可以複製a.c為a.orig.c進行備份.diff命令必須在整個Linux原始碼的根目錄的上一級目錄中執行.1.為單個檔案生成補丁diff-uplinux-2.6.28.8/net/sunrpc/svc.orig.clinux-2.6.28.8/net/sunrpc/svc.c這條命令會產生類似如下的輸出,你將它重定向到一個檔案中,這個檔案就是patch.---linux-2.6.28.8/net/sunrpc/svc.orig.c2009-03-1708:50:04.000000000+0800+++linux-2.6.28.8/net/sunrpc/svc.c2009-03-3019:18:41.859375000+0800@@-1050,11+1050,11@@svc_process(structsvc_rqst*rqstp)引數詳解:-u顯示有差異行的前後幾行(上下文),預設是前後各3行,這樣,patch中帶有更多的資訊.-p顯示程式碼所在的c函式的資訊.2.為多個檔案生成補丁diff-uprNlinux-2.6.28.8.orig/net/sunrpc/linux-2.6.28.8/net/sunrpc/這條命令對比了linux-2.6.28.8.orig/net/sunrpc/和linux-2.6.28.8/net/sunrpc/兩個目錄的原始碼差異.不像只需要單個檔案,如果修改多個檔案,那麼就需要複製整個Linux原始碼樹.引數詳解:-r遞迴地對比一個目錄和它的所有子目錄(即整個目錄樹).-N如果某個檔案缺少了,就當作是空檔案來對比.如果不使用本選項,當diff發現舊程式碼或者新程式碼缺少檔案時,只簡單的提示缺少檔案.如果使用本選項,會將新新增的檔案全新打印出來作為新增的部分.3.打補丁生成的補丁中,路徑資訊包含了你的Linux原始碼根目錄的名稱,但其他人的原始碼根目錄可能是其它名字,所以,打補丁時,要進入你的Linux原始碼根目錄,並且告訴patch工具,請忽略補丁中的路徑的第一級目錄(引數-p1).patch-p1<patch1.diff
透過diff工具生成補丁,patch工具打上補丁.在使用diff之前,你需要保留一份未修改過的原始碼,然後在其它地方修改原始碼的一份複製.diff對比這兩份原始碼生成patch.修改過的原始碼必須保留原來的檔名,例如,如果你修改原始碼中的a.c檔案,那麼,修改後的檔案還是名為a.c,在修改之前你可以複製a.c為a.orig.c進行備份.diff命令必須在整個Linux原始碼的根目錄的上一級目錄中執行.1.為單個檔案生成補丁diff-uplinux-2.6.28.8/net/sunrpc/svc.orig.clinux-2.6.28.8/net/sunrpc/svc.c這條命令會產生類似如下的輸出,你將它重定向到一個檔案中,這個檔案就是patch.---linux-2.6.28.8/net/sunrpc/svc.orig.c2009-03-1708:50:04.000000000+0800+++linux-2.6.28.8/net/sunrpc/svc.c2009-03-3019:18:41.859375000+0800@@-1050,11+1050,11@@svc_process(structsvc_rqst*rqstp)引數詳解:-u顯示有差異行的前後幾行(上下文),預設是前後各3行,這樣,patch中帶有更多的資訊.-p顯示程式碼所在的c函式的資訊.2.為多個檔案生成補丁diff-uprNlinux-2.6.28.8.orig/net/sunrpc/linux-2.6.28.8/net/sunrpc/這條命令對比了linux-2.6.28.8.orig/net/sunrpc/和linux-2.6.28.8/net/sunrpc/兩個目錄的原始碼差異.不像只需要單個檔案,如果修改多個檔案,那麼就需要複製整個Linux原始碼樹.引數詳解:-r遞迴地對比一個目錄和它的所有子目錄(即整個目錄樹).-N如果某個檔案缺少了,就當作是空檔案來對比.如果不使用本選項,當diff發現舊程式碼或者新程式碼缺少檔案時,只簡單的提示缺少檔案.如果使用本選項,會將新新增的檔案全新打印出來作為新增的部分.3.打補丁生成的補丁中,路徑資訊包含了你的Linux原始碼根目錄的名稱,但其他人的原始碼根目錄可能是其它名字,所以,打補丁時,要進入你的Linux原始碼根目錄,並且告訴patch工具,請忽略補丁中的路徑的第一級目錄(引數-p1).patch-p1<patch1.diff