根据洋红色 下载页面, ,在补丁部分下

请将补丁程序上传到您的Magento root Directory中,然后运行适当的SSH命令:用于使用文件扩展名的补丁文件`.sh:sh Patch_file_name.sh示例:SH Patch_supee-1868_ce_1.7.0.0.2_v1.sh

Magento建议直接调用 sh 命令运行他们的补丁跑者。文件扩展 .sh 也支持这一点。

但是,如果你 查看每个补丁程序文件的顶部, ,Shebang线指向 bash.

#!/bin/bash
# Patch apllying tool template
# v0.1.2
# (c) Copyright 2013. Magento Inc.
#

我中的程序员想信任源文件,但是wonk的流程想遵守Magento网站上写的内容,愤世嫉俗的奇特想知道是否已经对补丁进行了测试 Bash和SH之间的差异.

有帮助吗?

解决方案

实际上,您必须使用bash。在您明确指出的补丁程序的第14行上是此代码:

if (( $? != 0 )); then

$(( 是一个 有效的算术表达 在XCU SH中,但是 (( 不是。)

但是,在许多类似Unix的平台上 /bin/sh 只是对 /bin/bash. 。当调用名称时 sh, ,bash确实禁用 一些 它的无情行为,但并非全部。这些补丁可能会很好地适用于SH。

其他提示

如果将来它帮助某人,我已经使用phpstorm应用了补丁程序,并且其补丁工具很棒。无需任何问题即可应用补丁程序不到30秒,您还可以看到并通过文件所存在的差异。

许可以下: CC-BY-SA归因
scroll top