如果應(yīng)用了某一個補丁之后想恢復(fù)原來的文件,那么使用參數(shù) -R,例如: 1. 首先打了一個補丁 $ patch -p1 < my.patch 2 然后想恢復(fù)原來的文件,那么 $ patch -R -p1 < my.patch 如果要為多個文件制作補丁,那么可以使用 git 來快速生成,因為 git 是一個局部目錄的庫,所以不會有多余開銷。 1.創(chuàng)建 git $ cd src $ git init 2.添加需要制作補丁的文件,或者全部添加 $ git add * 或者 $ git add *.c 3. 提交原始文件 $ git commit -a -m'init' 4. 修改源文件 。。。 5. 創(chuàng)建補丁 $ git diff > my.patch 兩者配合時候可以合并、編輯以前的多個補丁文件,最后生成一個最新版本的補丁文件。 這樣創(chuàng)建的補丁文件目錄會自動增加一個前綴 a/ b/,例如 diff --git a/Makefile.in b/Makefile.in 這時候應(yīng)用補丁的時候需要到包的根目錄,使用 -p1 選項 $ patch -p1 < my.patch 如果不想在文件名前面增加前綴,那么使用選項 --no-prefix $ git diff --no-prefix > my.patch 生成的補丁頭如下,沒有了文件目錄的前綴 diff --git Makefile.in Makefile.in 用這個打補丁的時候就需要使用 -p0 選項 $ patch -p0 < my.patch |
|