
可以patch
冪等地呼叫;即,是否存在某些選項組合會導致重複呼叫與單次呼叫(對於非空差異)patch
具有相同的效果?patch
答案1
有些補丁可以多次應用,因此無法保證這一點;但
patch -N -r- -i your.patch
將申請your.patch
,忽略任何已經申請的帥哥。
-N
避免嘗試恢復已套用的補丁,並-r-
跳過將失敗的區塊儲存到.rej
檔案。
具有長選項的等效命令是
patch --forward --reject-file=- --input=your.patch
這樣運作的時候,如果patch
忽略了帥哥,那就表示失敗了。如果唯一的「錯誤」被忽略了 hunk,它將以代碼 1 退出(至少有一個 hunk 失敗,或存在合併衝突);退出代碼 2 指示更嚴重的錯誤。
¹ 沒有上下文的補丁或區塊,或新增的行與上下文相符的地方(例如添加多態函數的補丁,其中聲明的前幾行與下一個函數匹配)。