本記事では、WordPressのテーマのソースコードをGitHubで管理する方法について説明します。
GitHubはWeb上でソースコードをGit管理できるサービスです。

ソースはレポジトリと呼ばれる単位で複数管理することができます。

レポジトリはソースコードを公開するPublicレポジトリとソースコード非公開のPrivateレポジトリの2種類を作成できます。

以前はPrivateレポジトリを作成する場合有料プランの登録が必要でしたが、無料プランでも作成できるようになりました

個人でも利用できるので有効に活用しましょう。

GitHubでWordPressテーマを管理する手順

GitHubでテーマをGit管理する手順は、以下の通りです。

・子テーマを作成
・子テーマのソースコードをGitHubにアップロード

◆テーマを直接修正することはできる?
テーマを直接修正することもできますが、この方法はおすすめしません。

テーマが更新された時に自分で修正した内容が消えてしまう可能性があるからです。
必ず子テーマを作成するようにしましょう。

子テーマのソースコードをGitHubにアップロード

ソースコードをGitHubにレポジトリを作成してアップロードする手順について説明します。
1.newボタンをクリックします
newボタンをクリック

2.必要な情報を入力してレポジトリを追加
必要な情報を入力して作成

レポジトリ名・レポジトリの種類を入力して「Create repository」をクリックします。

レポジトリは必ず「private」で作成するようにしましょう。

3.作成したレポジトリを自分のPCにチェックアウト
gitコマンドで自分のPCにソースコードをチェックアウトします。
git clone [レポジトリ名] レポジトリ名はレポジトリページの「Clone or download」で確認できます。
レポジトリの確認

4.テーマフォルダの中身をチェックアウトしたレポジトリディレクトリの直下にコピーします。

5.テーマの内容をGitHubにコミット&プッシュします。
git commit -m ‘テーマのソースコードを追加’
git push
以上でソースコードのアップロードは完了です。

WordPressテーマをGit管理する手順

WordPressをGit管理する手順は以下の2つです。

  • deploy Keyを登録
  • サーバーからソースコードをチェックアウト

deploy Keyを登録

deploy Keyを登録手順について説明します。

1.新しいSSH鍵を生成する
サーバーにログインして新しいKeyを作成します。

ssh-keygen -f ~/.ssh/id_rsa_xxxx

「id_rsa_xxxx」は任意のファイル名です。
作成に成功すると「~/.ssh/」にSSHの秘密鍵(id_rsa_xxxx)と公開鍵(id_rsa_xxxx.pub)が作成されます。
2.GitHubの対象レポジトリのページを開いて「Settings」をクリックします。

Settingsをクリック
3.「Deploy keys」をクリックします。

Deploy keysをクリック
4.「add deploy key」をクリックします。

add deploy keyをクリック
5.key情報を入力

Key情報を入力する

titleは何でもOKです。

後から見てどこのサーバーの鍵かわかる名前にしておきましょう。

keyには先程作成した公開鍵(id_rsa_xxxx.pub)の内容を貼り付けます。

ファイルを開いて全文をコピーして貼り付ければOKです。

6.「Allow write access」にチェックを入れて「Add Key」をクリック

以上でGitHubからクローンできるようになります。

7.「~/.ssh/config」を開いて以下の内容を記述します

Host github-sample-rep
  User git
  Port 22
  HostName github.com
  IdentityFile ~/.ssh/id_rsa_xxxx
  TCPKeepAlive yes
  IdentitiesOnly yes

Host:何でもOK
IdentityFile:作成した秘密鍵のファイルパス

他はそのままでOKです。

サーバーからソースコードをチェックアウト

サーバーにログインしてテーマのディレクトリ(インストールフォルダ/wp-content/themes/)に移動します。
テーマディレクトリからソースコードをチェックアウトします。

通常の場合、GitHubからコピーしたURLをそのまま指定しますが、deploy keyを使う場合は修正が必要です。
git@[configのHostに指定した名前]:[ユーザー名]/[レポジトリ名]

◆通常の場合
git clone https://github.com/user/sample-rep.git

◆deploy keyを使う場合
git clone git@github-sample-rep:user/sample-rep.git

まとめ

テーマを自分で修正した場合、修正ミスにより動作不能に陥る可能性があります。

すぐに修正を取り消すことができるバージョン管理は必須です。

バージョン管理は手順が多いですが、一度設定してしまえばソースコードの修正や巻き戻しが簡単にできるようになります。

特にGitHubは無料でバージョン管理ができるサービスなので有効に活用するようにしましょう。

>>GitHubの登録はこちら