flabaka blog

nginx Tips vps

WordPressのテーマファイルを、さくらVPSのGitでバージョン管理してみる

WordPressのテーマフォルダを、さくらVPSのGitでバージョン管理してみようかな~と思い立ったんですが、ハマったことがあったので、忘れないように残しておこうかと…

とても参考になった記事

こちらの記事を読んで、一通りやってみました。
自分の場合は、WordPressのテーマフォルダ以下をGitのバージョン管理対象に置きたかったので、多少異なりますが…

// 上記の記事と同じく、home/flabakaにリポジトリを設置する
cd /home/flabaka
mkdir repos
cd repos
mkdir flabaka.git
cd flabaka.git
git init --bare --shared

今回、WordPressのテーマフォルダ名がflabakaなので、gitのディレクトリ名も同名にしてみました。
ちなみにここで設定したディレクトリ名が、後にpullした際に作成されるディレクトリ名になります。
次に公開ディレクトリに移動して、クローンするんだけど…

//公開ディレクトへ移動
cd /公開ディレクトリ/wp-content/themes/flabaka/
git clone /home/flabaka/repos/flabaka.git

wp-content/themes/flabakaのフォルダ内は、空っぽにしておきます。
で、SourceTreeとかターミナルから、ファイルを登録→コミット&PUSHしておきます。

// pullしてみる
//↓ディレクトリ移動する必要がなければ、省略
cd /公開ディレクトリ/wp-content/themes/flabaka/
git pull

これを実行すると、themes/flabaka/flabaka/となってしまって、フォルダ毎pullしてきてしまいます。
フォルダ以下(functions.phpなどのファイル)だけ取得したい場合どうすんのって?

一つ上の階層にすれば解決?

clone設定するパスを、wp-content/themes/flabaka/ではなく、wp-content/themes/にすれば、フォルダ毎pullしてきても、wp-content/themes/flabaka/になるからいいのかも? とか思ったけれど、clone設定する際にはディレクトリを空にしておかなければ駄目。

テーマフォルダ内にはデフォルトで、twenty〇〇とかが存在しているので、どうしたものかと…

cloneする際のパスの設定を変更すれば解決!

とても参考になった記事

なるほど~ってことで、公開ディレクトリに移動してクローンする際の設定を変更します。

//↓ディレクトリ移動する必要がなければ、省略
cd /公開ディレクトリ/wp-content/themes/flabaka/
#git clone /home/flabaka/repos/flabaka.git //この記述を変更する
git clone /home/flabaka/repos/flabaka.git .
git pull

ディレクトリ名にカレントディレクトリ(.)を設定すると、必要なファイルのみpullしてくることが出来ました。

自動デプロイの設定

/home/flabaka/repos/flabaka.git/hooksフォルダ内にpost-receiveファイルがないので、フォルダ内のファルを複製&リネーム or 新規作成するなどして、自動デプロイの設定を記述すればOK。