You are here

Drupal专业开发指南 第21章 应用一个补丁

 

补丁是根据cvs diff或者diff命令的输出所创建的文件。在你创建或者下载了一个补丁以后,导航到Drupal的根目录并运行下面的命令:
 
patch -p0 < path/to/patchfile/patchfile.patch
 
    如果补丁是在Drupal安装的根目录下创建的,而你也是在你的Drupal安装的根目录应用的,那么路径应该是相同的,所以-p0(这里是一个零)标记用来告诉补丁程序使用在补丁文件中找到的路径(也就是,从路径前缀中去掉0部分)。
    如果你在应用补丁时遇到了问题,那么可以在http://drupal.org/node/60116寻找相关帮助。
    有时,为了提升速度或者添加缺失的功能,你可能想为你的实际站点应用一个补丁。这件事的最佳实践是,创建一个patchescvs diff –up”命令来重新创建补丁。在同一个文件夹下,你还需要创建一个文本文件用来说明每个补丁的应用原因。你可以使用一个命名习惯,使得名字能够提供一些清晰的上下文信息,例如:文件夹,用来在每个补丁应用后存放它的拷贝。如果你还没有这样做,你可以对文件运行“
 
modulename-description-of-problem-NODEID-COMMENTNUM.patch
 
    假定你使用了工作流和令牌(token)模块,但是这两个模块之间整合的不大好。有人提交了一个补丁,修正了这个问题,但是模块的开发者还没有把补丁合并到一个新发布中,而你的站点明天就要上线,你现在就需要它。你应该这样为补丁命名:
 
workflow-conflict-with-token-api-12345-67.patch
 
    这样,当需要更新站点时,负责更新的任何人现在都可以断定以下几点:
 
•这个安装的哪些部分被修改了?
•为什么做这些修改?
•这个补丁现在是不是被合并到了主流代码中?
•如果没有的话,是不是有人也遇到了同样的问题并提供了更好的解决方案?
 

Drupal版本: