WordPressの公式ディレクトリにプラグインを登録・管理するには古くから svn が使用されています。

svn での操作から入った人にはこの記事の内容はご存知と言いますか、知らないとできませんでした。

しかしながら、現在は多くの開発者がGitHubを利用しており、svn のコマンドを叩かなくても、GitHubにタグ付けしたら公式ディレクトリに自動でアップしてくれる GitHub Actions の workflow などが公開されていて、普段はそちらを利用している方がほとんどだと思います。

GitHubから.orgのリポジトリに自動転送する GitHub Action

https://github.com/10up/action-wordpress-plugin-deploy

なぜ svn での手動操作が必要なのか?

.org のリポジトリからは自動で削除されない

先に述べた通りファイルの変更や追加はGitHub Actions で自動で送信処理可能です。しかしながら私の認識では、不要になったファイルをGitHubのリポジトリから削除・コミットしても、.org の svn リポジトリからは自動で削除されません(これ私の認識がもしかして違っているだけで何か自動化の設定があるようでしたらごめんなさい)。

不要なファイルが配信パッケージに残り続けるのはよろしくないので手動で削除する必要があります。

svn でのファイル操作

既存のリポジトリのデータを取得

svn がインストールされているPCで以下のコマンドで、.orgのリポジトリをダウンロードできます。

svn co https://plugins.svn.wordpress.org/プラグインのディレクトリ名 ダウンロード先ディレクトリ名

該当ファイルの削除

ダウンロードしたファイルの中で、trunk ディレクトリの中の不要なファイルを削除します。ただし、普通にGUIでファイルやディレクトリを削除してもsvnからはなくなりません。以下のようにコマンドで削除します。

svn delete 削除対象ファイル名

ちなみに複数同時に削除する場合は以下のようにそのままつなげればOKです。

svn delete 削除対象A 削除対象B 削除対象C

変更のコミット

削除したら以下のようにコミットします。

svn ci -m "コミットメッセージ"

ちなみに以下でも同じです。

svn commit -m "コミットメッセージ"

コミットした時点で .org のリポジトリに送信されます。

最新のリモートと再同期したい場合などは svn update を叩きます。

ユーザー情報の入力

初めて svn でコミットするPCやリポジトリの場合、ユーザー認証をしないと当然ながらコミットに失敗します。

コミットの際に、以下のようにユーザー情報を追加します。

svn ci -m "コミットメッセージ" --username ユーザー名

これでパスワードが聞かれるのでパスワード入力します。リポジトリに対する変更権限があればコミットが成功します。

一度ユーザー指定でログインすれば次回以降は username 指定は不要になります。

以上の手順で .org の svn リポジトリから不要ファイルを削除する事ができます。

ちなみに…

消してはいけない PHP ファイルを間違って消すと重大な不具合を引き起こすので、取り扱いには十分気を付けましょう。

Follow me!

この記事を書いた人

石川栄和代表取締役
名古屋のウェブ制作会社数社に10年程度務めた後、株式会社ベクトル設立。
企画・運営・コンサルティング〜WordPressを中心としたシステム開発まで幅広く携わる。
[ 著書 ]
・いちばんやさしいWordPressの教本(共著)
・現場でかならず使われているWordPressデザインのメソッド(共著)
[ 最近のWordPressコミュニティでの活動 ]
2019 WordCampNiigata セッションスピーカー
2019 WordCampHaneda セッションスピーカー
2018 WordCampOsaka セッションスピーカー
2017 WordCampKyoto セッションスピーカー

リリース記念キャンペーン!
G3 Pro Unit を買って


Evergreen


無料でダウンロードしよう

Lightningで使えるおしゃれなデザインスキン / コンテンツデータを試せるチャンス!