<<转载>>Druapl的patch补丁文件。

如何使用 Patch 檔 ?

阿舍在很久以前,大概是一個月之前吧 ! 就有試著要為一個模組來更新 pacth 檔,那時候就有想要寫一篇如何使用 Patch 的說明,不過,一拖之後就給它忘了,呵.....呵。

直到這一、二天鱷魚兄問有一個有關 cache_menu 的問題,因為需要用 patch 檔來更新才能解決,這才讓阿舍又想起來要寫這篇文哩.....。

首先,還是簡單說明一下什麼是 Pacth ? 以中文來說,就是俗稱的 "補丁",還是有聽沒有懂 ? OK,事情這樣子的,大部的軟體都一直更新版本,而更新版本的主要目的有二個,第一個是增加新功能,第二個就是要解決上一個或現有的版本問題 ( 俗稱叫 Bug 的東西 ),但是,要更新一個版本是一件不能隨便的事,因為,總是要做很多的測試,等確定都沒問題的時候才會發出一個新版本。

但是,這種方式會產生一種情況,就是,在版本和版本正式發行的中間,有使用者遇到幾個嚴重問題,或者是,有一些只會發生在某些特定情況的問題時,那要怎麼辦 ? 這時,就是利用 Patch 來修正此類型的問題,最典型的範例就屬 Windows 的更新了,每次更新的便是 Patch,只是更新的方式和 Drupal 完全不同的,但是觀念卻是一樣的。

在 Drupal 上,Patch 是一個標準的文字檔,裡面所放的資訊便是說明要去改那一個模組程式檔或是包含檔的那一行和那一段程式碼,在 Patch 檔裡的 +++ 和 --- 符號就是用來說明要在那裡增加或刪除程式碼的,所以,就算不用程式去做 Patch 更新的動作,也是可以由大德自己手動去複製 & 貼上來達到效果的,只不過,有效 Patch 檔可能會讓大德用手調到抽筋哩 ! 所以,還是用工具比較好吧...-___-!!。

在 Linux 或是 Unix 上,這個動作相對於 Windows 是比簡單的,因為 Patch 這支程式,本來就有的,而 Windows 則是沒有的,所以要花點時來選一選。

Drupal 官網上建議給 Windows 的 Patch 程式有三支,阿舍大概評估了一下,還是那支 GNU 出的 Patch 比較好用,所以本文就是用這支來紹囉 !!

開始之前,還是要提醒各位大德們,要更新任 Patch 之前,還是先架個測試環境會比較安全有保隌哩 !!

詳細作法說明如下:

1.下載 GNU 的 Patch 程式。
請到這裡下載 Patch 的壓縮檔
http://gnuwin32.sourceforge.net/downlinks/patch-bin-zip.php

說明一下,Patch 的網站上也可提供可以執行 Setup 的版本,但是,阿舍不太建議用那個方式,因為,阿舍有試著去安裝,但是,裝好之後,實在看不出有什麼特別用處哩 !

2.解壓縮。
把下載的檔案解壓縮到一個目錄裡,最好是直接在根目錄下,待會操作的時候會比較方便。

阿舍是把下載來的 patch-2.5.9-7-bin.zip 檔,解壓縮到 c:\patch 放。

3.下載 Patch 檔。
依阿舍的經驗來說,Patch 檔大都是在官網的論壇裡發現的,阿舍還沒不知道是否有專門可以下載的地方可以下載,如果各位大德有人知曉的話,就請不吝告知一下囉 ! 多謝 !!

4.開始更新。
再來便是重頭戲了,要準備開始更新哩 !

4-1 進入命令列視窗 ( 就是俗稱的 DOS 視窗 )
請按右下角的「開始」>「執行」> 打入「cmd」後,按確定,應該就會跳出一個黑底白字的視窗來。

4-2 切換路徑到 drupal 的安裝目錄
在 DOS 視窗下打入 "cd drupal 的安裝目錄",以阿舍的 drupal 為例,阿舍的 Drupal 6 是裝在

\drupal\TWAPMS_D62\TWAPMS\Apache\htdocs\drupal62"

所以,就要這樣下

cd \drupal\TWAPMS_D62\TWAPMS\Apache\htdocs\drupal62

然後,應該就會跳到 drupal 的安裝目錄去了。

4-3 執行 Patch

執行的方式如下:

patch -p0 < patch檔名 --verbose --binary

所以,以阿舍把 GNU 的 patch 執行檔放在 c:\patch,而下載的 patch 檔放在 c:\download\mc.patch 來當範例的話,結果就是要這樣下:

c:\patch\bin\patch -p0 < c:\download\mc.patch --verbose --binary

輸入完後,按一下 Enter 鍵,patch 的動作應該就會執行了,大德們就可看到更新的結果了,GNU 的 Patch 程式是會列示做過那些修改的。

5.更新或上傳已經修改的檔案
把修改過的檔案 ( 從 Patch 程式跑完後的畫面可以看出更新過那些檔案 ) 上傳或複製到線上系統 ( 要覆蓋 ),這樣就算大功告成了。

drupal.org 官網上的 Patch 相關教學
http://drupal.org/patch


本文源地址:http://drupal.soa.tw/how_to_patch#.U7tkavns18E

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值