Web制作初級者は、なかなかキツイです。

公式のバージョンアップ方法

EC-CUBE本体のバージョンアップ | EC-CUBE 開発ドキュメント

こちらが、公式のバージョンアップ方法です。
ページを開くだけで、大変なのが分かります。

ファイルの差分など情報が丁寧に書いてあるので、この通りに行えば、間違いないと思います。
しかし、このページが更新されないとバージョンアップできないのも嫌ですね。

そんなわけで、GitHubの公式のリポジトリから、バージョンアップの管理をしてみました。

GitHub – EC-CUBE/ec-cube: EC-CUBE is the most popular e-commerce solution in Japan

GitHubリポジトリからバージョンアップ

公式のGitHubからCloneして、プロジェクト用にブランチを切り、普通に作業するだけです。

$ git clone https://github.com/EC-CUBE/ec-cube.git repository_name
$ cd repository_name
$ git checkout -b project_name

SourceTreeを使うのも良いです。

あとは、開発を進めて、公式リポジトリが更新されたら、自分のプロジェクトにマージします。

そこで起きた問題とは?

これでバージョンアップが済めば楽なのですが、そんな簡単にいかないのです。
公式のドキュメントを読むことになります。

マイグレーションの問題

マージしただけでは、データベースをバージョンアップすることができません。
バージョンアップするためにマイグレーションが必要です。

サイトからマイグレーション

http://インストール先/install.php/migration

コマンドラインからマイグレーション

$ php app/console migrations:migrate

また、マイグレーションファイルが不完全な時があるのか、上手くできない場合がありました。
直接SQLを実行して解決しましたが、かなりドキドキします。

テンプレートファイル更新の問題

もとのテンプレートファイルを利用して、レウアウトを修正していると、このファイルに更新がかかった場合、目視で修正しないといけません。

公式のバージョンアップのドキュメントを見ると、わかるように書いてありますが、カスタマイズした範囲が大きいと大変だと思います。

本番への更新の問題

ローカル開発環境で、無事バージョンアップできても、本番環境にもバージョンアップしないといけません。

前の記事で、Deployerのことを書きましたが、デプロイ環境も一緒に構築しないと、実用的ではありませんでした。

Deployerを使ってみた話

まとめ

どの方法を選んでも、いまのところ、コツコツを頑張るしかありません・・・。
早く自動バージョンアップがつくと良いですね。

また、Gitを使いこなしたり、サーバーなどのインフラを調整しないといけないので、ハードルが高い気がします。

そのうち、2から3へバージョンアップの方法について、書きたいと思います。

では!

基本からしっかり学ぶ Symfony2入門
技術評論社 (2015-12-16)
売り上げランキング: 7,171