a-blog cmsを勝手にGitでバージョン管理する
このエントリーは、a-blog cms Advent Calendar 2013の15日目のエントリーです。
表題の通り、a-blog cmsを勝手にGitでバージョン管理してみました。
て書くと、「a-blog cmsて暗号化されてるし、意味無いじゃん」とか「テンプレートをGitでバージョン管理ならしてるし」
とか思われそうですが。
ちなみにGitってなに?って方はこちら。
対象は、a-blog cmsそのもの
a-blog cmsの過去バージョンはここから自由にDLできますが、これをバージョン毎に勝手にGitで管理しています。
なぜそんなことをするのかというと、
a-blog cmsの案件を受注するときに、個人的に一番怖いのがバージョンアップです。
自分でイチから構築・カスタマイズしたものならまだしも(それでも忘れてますが)、
例えば、ある日、バージョンアップだけお願いしたい。とか来ると結構恐怖です。
あくまで個人的に。
なぜ恐怖なのか
バージョンアップ自体は、ファイルを入れ替えて、ツールを使ってアナウンス通り進めていけば大概ちゃんとできるんですが、themes/systemのテンプレートを(カレントテーマに移して)カスタマイズしてると、なにやら特定のとこだけ動かなかったりします。
あくまで(略
なので、バージョン管理する主な対象は、themes/system内のテンプレートファイルです。
特定のバージョンから、バージョンアップさせたいバージョン(ややこしい)までに、どんな変更があったのか、差分を視覚的に確認することができます。
GUIツールで差分をみてみる
SourceTree(無料)で差分をみてみます。
例えば以下は、themes/system/include/column.htmlの1.6.2.1→1.7.0の差分ですが、
単純に、赤の網掛けの箇所が緑の網掛けの箇所に変更されたということです。
このファイルを1.6.2.1でカスタマイズしてカレントテーマのディレクトリに入れていた場合、
バージョンアップによって新しくユニットで登録できるようになった定義リストが、ユニットで登録してもサイトに反映されないということになります。
そうゆうときに、多少なりとも原因を見つけやすくしようということです。
という感じで
別にわざわざGitで管理することでもないという感も否めないですが、
最近バージョン管理やファイル共有はGitでってプロジェクトもありますし、これを機に試してみるのもいいのではないでしょうか。
2.0のリリースに併せて、新しくバージョンアップなどの有償サポートも増えるようです。
こちらを検討してみてもいいかもしれません。
現場からは以上です。