2011-07-15 47 views
3

我已經下載了一個diff文件來修改版本化項目目錄(Xerces 2.8)中的一些文件。 diff文件包含每個「左」文件(由 - 符號表示的文件)的完整路徑。 「正確」文件(+符號)包含一個相對路徑。例如:如何在存在完整路徑時使用補丁將文件夾應用於不同文件夾的文件夾?

--- /opt/local/var/macports/build/_opt_local_var_macports_sources_rsync.macports.org_release_ports_textproc_xercesc/work/xerces-c-src_2_8_0/src/xercesc/util/Platforms/MacOS/MacCarbonFile.cpp 2007-08-28 20:44:07.000000000 +0200 
+++ src/xercesc/util/Platforms/MacOS/MacCarbonFile.cpp 2009-10-28 19:37:22.000000000 +0100 

我想用diff文件更新的項目目錄的本地副本當然是處於不同的完整路徑。

我找不到在哪裏放置diff文件(或者說,在我運行patch時將自己放置在什麼目錄中)以及要運行的命令。

因爲第二(+)的文件是一個相對路徑,我認爲定位自己在正確的位置在我的本地文件系統,以便相對路徑是正確的 - 然後發出命令

patch -i patchfile 

... 會工作。它不會(相反,patch向我顯示每個文件的提示,因爲它找不到它)。

我應該發出什麼命令才能使用patch合併差異文件?

回答

6

通過-p後跟適當數量的路徑前綴去除。

相關問題