http://pepabo.com/
WordPressサイトのバージョン
管理について
万野潤二
ロリポップ!
chicappa!
minne(チーム酢モツ)
カスタマーサービス
WordBench福岡に良く参加しています。
WordPressのバージョン管理について
というタイトルですが、一般的なサイト管理
にも有効なのでぜひ興味をもっていただけ
れば!
バージョン管理について
• WordPressに限らずバージョン管理をどうして
いますか?
• Git Subversion CVS Mercurial
• リポジトリホスティングサービス GitHub,
BitBucket Gitbucket など
リポジトリ
• リポジトリ【repository】
• 何らかのデータや情報、プログラムなどが体系
だてて保管されている場所。
• これはサイトの管理に使わないと!
集中型
• 1つのリポジトリを共同
で作業してコミットす
る。
• 自分の作業が他人に
影響する
• 作業メンバーが増える
と辛い。
git commit
git checkout
分散型
• 各作業者がリポジトリ
を持つことができる。
• ローカルリポジトリで
好き勝手できる。
• 作業メンバーが増えて
も全然問題ない。
git checkout
git commit
git pull
git push
リリースに使う
開発環境
本番環境
リリースに使う
開発環境
本番環境
Git環境の準備
• ロリポップ!でサイトを運用している。
• チカッパ、ビジネスプランを利用中である。
• プラン変更できます。
• バージョン管理をしていない。
• 今回は、共有リポジトリとしてBitbucketを使いま
す。
GitHubとBitbucket
GitHub Bitbucket
プライベートリポ
ジトリ数
$7/月 5個まで 無制限
ユーザ数 無制限 5人
※コードを見られてもいいのであれば、 
 GitHubのFreeプランでも可。
Git初期設定
• ロリポップ!ユーザー専
用ページの「SSH接続情
報」を確認します。
ssh
• サーバーへのログイン、ファイルの転送、コマン
ドの実行などを行う通信方法
• SSHソフトとして、ターミナル(Mac)を使いま
す。
• 黒い画面は苦手・・
GUIツールの活用(SourceTree)
Git初期設定
• 対象サイト http://manno.jp/wptest/
• 既にWordPressで作ったサイトがあるので、
サーバに入ってgitレポジトリ環境を用意します。
• ssh でログイン
• レポジトリの作成
本番環境
# WordPressサイトに移動する
$ cd /web/wptest
# git初期設定
git init
# リポジトリの概要を作る
vi README.md !
# ignoreファイルを書く
vi .gitignore
本番環境
• .gitignoreファイルはgitで管理しないファイ ルを
登録しておくものです。
• .gitignoreについてはこちらhttps://github.
com/github/gitignore/blob/master/WordPress.gitignore
本番環境
.htaccess
wp-content/advanced-cache.php
wp-content/wp-cache-config.php
wp-content/cache/
wp-content/backups/
wp-content/backup-db/
wp-content/blogs.dir/
wp-content/upgrade/
wp-content/uploads/
*.log
sitemap.xml
sitemap.xml.gz
wp-config.php
本番環境
# 追加( . は全部)
$git add .
# コミット
$git commit -m “first commit”
# リモート(bitbucket)に追加
git remote add origin https://ecogrammer@bitbucket.
org/ecogrammer/wptest.git
# masterブランチをプッシュ
git push -u origin master
開発環境
手元のPC、Macにリモートリポジトリを持ってくる。
# WordPressを設置する場所に移動
$ cd /to/wptest
# リモート(bitbucket)リポジトリをclone
$ git clone https://ecogrammer@bitbucket.
org/ecogrammer/wptest.git
開発環境
• 本番環境で運用しているWordPressサイトを用意
• データベースの情報を持ってくる(dumpするなりして
持ってくる)
• .gitignoreに含まれるファイルを用意する。
• wp-config.php
• .htaccess
• wp-content/uploads/
Git環境構成
sshログイン
①git pull
② git add
git commit
git push③
④ git push(最新コードに更新)
開発環境
本番環境
bitbucket
実際に使ってみます
demo
開発環境での作業
• マスターしか利用しない(ブランチは使用しません)
git pull origin master // マスターの最新版を取得
WordPressのテーマなどの
修正作業を行います。
① git pull
開発環境での作業
• 開発環境で修正が終わったら以下の作業を行います
git status  // 修正ファイルの確認
git diff .  // 修正内容の確認
git add -A // 修正ファイルを追加
git commit -m "コミットメッセージ"
② git add
git commit
開発環境での作業
• 修正内容を共有リポジトリに反映させます。
git push origin master // マスターにプッシュ
git push③
本番環境での作業
• FTPでのファイル更新ではなく、gitによるリリース
// ssh接続で本番サーバにログインする
ssh hogehoge
// リポジトリから最新のデータを反映する
git pull origin master
sshログイン
④ git push
最新コードに更新
Gitのメリット
• FTPを使わなくて良くなる!
• FTPをやめてgitでファイルを送受信
• セキュリティ的にもFTPアカウントが狙われない
• 戻せる!!
• git reset でリリース前(直前)の状態に戻すことができます
• 作業履歴が明確!!!
• 編集前の差分が確認できる
• 共同作業がやり易い!!!!
• それぞれのリポジトリ環境制作を進めることができる
参考
もうFTPを利用することは止めて、Gitを使おう。そのほうがメリットが
多いよー
http://wp-d.org/2014/02/26/5709/
A collection of .gitignore
https://github.com/github/gitignore
ありがとうございました

WordPressサイトのバージョン管理