FTPサーバーにDrupal 7をインストールしました。Drupalパッチを適用しようとしています。
私はオンラインで多くのリンクを見ましたが、DrupalがホスティングアカウントのFTPサーバーにある間は誰もそれを行う方法を示していません。私がそれを行う方法はたくさんあると思います。1つの方法はNet Beansを取得します。NetBeansを最初にFTPサーバーにインストールする必要があるのか、ローカルマシンにインストールする必要があるのかわかりません。
初心者のためにいくつかの詳細を提供できれば、それは役に立ちます。
UNIXベースのシステム(MacOSX、さまざまなLinuxディストリビューションなど)を使用している場合、patch
ユーティリティはここでの優れたツールです。私は通常、次のコマンドを使用します。
patch -p1 < patch-file.patch
とともに -p1
オプションは、すでにgitリポジトリの下にあるインストールに重要です。
ただし、ユースケースは少し異なるようです。 drupal.orgには、さまざまな環境でパッチを適用するための 優れたドキュメントページ があります。
Gitによるパッチの適用 に完全なチュートリアルがあります。これを手動で行う簡単な方法もあります。例として このパッチ はCtoolsエラーを修正します。これはコードです
_diff --git a/includes/css-cache.inc b/includes/css-cache.inc
index d88160b..607b886 100644
--- a/includes/css-cache.inc
+++ b/includes/css-cache.inc
@@ -10,6 +10,12 @@ class CToolsCssCache implements DrupalCacheInterface {
/**
* {@inheritdoc}
*/
+ function __construct($bin) {
+ }
+
+ /**
+ * {@inheritdoc}
+ */
public function clear($cid = NULL, $wildcard = FALSE) {
// Only clear the caches if the wildcard is set, this ensures that the cache
// is only cleared when the full caches are cleared manually (eg by invoking
_
_/includes/css-cache.inc
_は、変更する必要があるファイルを決定します。 _+
_記号は追加する必要があるコードであり、_-
_記号は削除する必要があるコードを意味します(ここにはありません)。したがって、このパッチの結果として、public function clear($cid = NULL, $wildcard = FALSE) {
ステートメントを探して、
_ function __construct($bin) {
}
_
その上。明らかにこの行は_class CToolsCssCache implements DrupalCacheInterface
_クラスにあります。
パッチをインストールするのが難しい場合は、私が言ったようにファイルを変更して、エラーがなくなったかどうかを確認してください。
上記の優れたドキュメントを使用してローカルマシンにパッチを適用し、変更されたファイルをFTPで送信します。
この間、どこかでバージョン管理システムを使用しているといいのですが。率直に言って、私がまだFTPを使用してコードファイルを移動しているサーバーのセットアップは受け入れません。
さらに別のアプローチは Patch Manager モジュールを使用することです。以下は、プロジェクトページからの抜粋です。
...コアモジュールおよびコントリビュートモジュールへのパッチを管理するための開発者ツールを提供します。
バリエーションとして、考慮すべき他のオプションを以下に示します(同じプロジェクトページにも記載されています):おそらくより良い解決策は、パッチを適用するために Drush またはDrush拡張機能 を使用することです。 Drush Issue Queue Commands 安全でない構成に依存しないため。