web-dev-qa-db-ja.com

WordPress Coreに提出するためのパッチを作成する最も簡単な方法は?

私はWordPressコアのためのいくつかの パッチを提出しました on Trac (そのうちの1つが使用されています)退屈です。

コアのパッチを提出するのに必要な手順を詳しく説明してから、プロセスを合理化するための最善の方法を教えてください。私は現在Mac OS XとPhpStormで働いていますが、シェルスクリプトが最も簡単かもしれないと思いますか?それとも、すべてのローテーションが機能するPHPスクリプトなのでしょうか。

問題の1つは、私が始めなければならないことを十分に理解していないということです。トランクから始めますか?パッチを作成するたびに、新しいコピーをダウンロードして自分のコードでそのコピーを追加/編集する必要がありますか。

繰り返しますが、私はSVNを使った作業を行っていますが、パッチは私の現在のスキルの範囲外であり、それを変更したいのです。 WordPressのパッチ適用の専門家が私の助けになることを願っています。前もって感謝します。

更新:

@ hakreの回答が終わったら、質問にさらに追加する必要があると思います。

  • 古いバージョンからパッチを作成できますか、それともtrunkを使用する必要がありますか?
  • リリースバージョン(3.0.1)を使用しているプロジェクトで作業している場合は、それを変更してcore用のパッチを作成できますか。それとも、元の状態のトランクと新しいコピーをダウンロードして設定してください。
  • シェルスクリプトを使用してログインをスクリプトにエンコードし、スクリプトを実行して必要なものをすべて再作成したり、パッチを作成したりすることはできますか。
  • そして落とし穴は何ですか?

これらの質問はすべて、WordPressのSVNがどのように機能するのかを知っている人によって想定されているように思われます。そのため、あらゆる議論で常に討議されています。

12
MikeSchinkel

パッチを作成する最も簡単な方法は、次のとおりです。

http://wordpress.org/download/svn/ /

古いバージョンからパッチを作成できますか、それともtrunkを使用する必要がありますか?

適用したいバージョンと同じバージョンに対してパッチを作成する必要があります。

つまり、WP 3.0.1に対して作成されたパッチがWP 3.1-alphaに正しく適用されることを期待しないでください。

リリースバージョン(3.0.1)を使用しているプロジェクトで作業している場合は、それを変更してcore用のパッチを作成できますか。

新しいパッチごとに新しいインストールを設定する必要はありません。元の状態に戻るには、svn revertを使用するだけです。

また、データベースは毎回クリーンである必要はありません。実際には、実際の環境をシミュレートするために、いくつか変更を加えた方が良いでしょう。

8
scribu

Eclipse PDT + Subclipse + X

私は SVN統合のあるEclipseを使っています 。 PHP St​​romもそうだと思います。私は基本的にWordPressのsvnリポジトリからチェックアウトしている私のトランクプロジェクトの1つに入ります。

それから私は私が編集する必要があるファイルを編集します。 Eclipseは、どれが変更されているかを示し、ディレクトリを右クリックしてTeam->Create Patchを選択すると、差分として選択できるすべての変更されたファイルが提供されます。それから私はクリップボードにコピーするかディスクに保存するかを選択できます。チケット番号を付けて作成したすべてのパッチを、自分のハードディスク上のディレクトリに保存します。

それから私はブラウザに入り、パッチをアップロードします。

MyLyn Trac 統合を使ってこれを行うこともできます。これはさらに快適ですが、tracにXML-RPCが必要なので、連絡するにはtrac管理者が必要です。それはかなりうまくいきますが、私はそれをすべてのプロジェクトで設定してもらうわけではなく、主にチケットを整理するときにそれを使います。

それなら、Eclipseをチェックしてください。それは巨大で遅いので、あなたはどちらかの大きなコンピュータを必要とします。小さいものでは、私はFedora Linuxで良い経験をしました。 Eclipseはそれでうまく動きます。私はあなたがPHP St​​ormのファンであることを知っています、しかし、まあ、私は私のEclipseが本当に好きで、それは本当に揺るがす多くの拡張機能が付属しています。 PHP :)でもです。しかしPHP St​​ormは基本的に同様にcheckout/patchのことをするべきです。

WordPressのEclipse 1x1

ああ、私は自分のOSに私が使ったすべてのディレクトリを保存するツールがあります。そのため、最近のリストにあるのと同じディレクトリにあるので、パッチを保存してファイルをすばやくアップロードできます。

統合例: PHP Code Sniffer、Eclipse、WordPress

5
hakre

私はこれらを使います:

https://core.trac.wordpress.org/ticket/9724

それは明らかに適用パッチ部門にもっとありますが。 ;-)

2