从补丁脚本中删除行

Remove line from patch script

当我 运行 一个补丁时,它在其中一个文件上失败了。我想从 patch.x.x.x.sh 中删除相应的行,以便除此文件之外的所有其他内容都被修补。

希望有人能解释一下程序。

例如,我正在尝试应用补丁 SUPEE-10336 并出现错误:

[http]$ bash PATCH_SUPEE-10336_CE_1.9.2.4_v1.sh
Checking if patch can be applied/reverted successfully...
ERROR: Patch can't be applied/reverted successfully.

patching file app/code/core/Mage/Usa/Model/Shipping/Carrier/Usps.php
patching file app/locale/en_US/Mage_Usa.csv
Hunk #1 FAILED at 99.
1 out of 1 hunk FAILED -- saving rejects to file app/locale/en_US/Mage_Usa.csv.rej

我想编辑 PATCH_SUPEE-10336_CE_1.9.2.4_v1.sh 所以我从补丁中删除了负责此文件的行。

我看不到任何人对这个问题感兴趣,但我想我 post 无论如何都会回答这个问题。

如果您在任何文本编辑器中打开补丁,找到 __PATCHFILE_FOLLOWS__ 部分,即使用 diff 命令合并文件的地方。如果是 `Mage_Usa.csv" 文件导致了问题,所以我找到了负责该文件的补丁部分:

diff --git app/locale/en_US/Mage_Usa.csv app/locale/en_US/Mage_Usa.csv
index 072170d..5e8f844 100644
--- app/locale/en_US/Mage_Usa.csv
+++ app/locale/en_US/Mage_Usa.csv
@@ -99,7 +99,7 @@
 "First-Class Mail Large Envelope","First-Class Mail Large Envelope"
 "First-Class Mail Large Postcards","First-Class Mail Large Postcards"
 "First-Class Mail Letter","First-Class Mail Letter"
-"First-Class Mail Parcel","First-Class Mail Parcel"
+"First-Class Package Service - Retail","First-Class Package Service - Retail"
 "First-Class Mail Postcards","First-Class Mail Postcards"
 "First-Class Package International Service","First-Class Package International Service"
 "First-Class Package Service","First-Class Package Service"

我删除了补丁的整个部分并重新运行它是 SSH。

这次:

[http]$ bash PATCH_SUPEE-10336_CE_1.9.2.4_v1.sh
Checking if patch can be applied/reverted successfully...
Patch was applied/reverted successfully.

我手动更改了文件 Mage_Usa.csv 中的 USPS 名称(我删除的补丁部分)。