建立補丁檔案:
比如一個工程目錄為project-old/, 修改後的工程目錄為project-new/
工程中的一個檔案為file-old, 修改後的檔案為 file-new (可以是同名的,利用不同目錄來區別檔案)
利用工程目錄來生成patch: $diff -Naur project-old project-new > name.patch
或者
利用工程檔案來生成patch: $diff -Naur file-old file-new > name.patch
對於目錄層數的一些限制
使用 --exclude=.git忽略.git資料夾下的檔案改變
$diff -Naur --exclude=.git file-old file-new > name.patch
使用補丁檔案
將補丁檔案和name.patch 和工程目錄project-old/ 放在同一目錄 下
打補丁命令如下:
$cd project-old/
$patch -p1 < ../name.patch //命令在project-old/ 中執行
diff options:
-N --new-file
Treat absent files as empty.
-a --text
Treat all files as text.
-u -U NUM --unified[=NUM]
Output NUM (default 3) lines of unified context.
-r --recursive
Recursively compare any subdirectories found.