LoginSignup
33
33

More than 5 years have passed since last update.

Boxenをアップデートする方法

Posted at

Boxenも定期的にアップデートしていかなければいけません。で、Boxenをアップデートしようと思って、Puppetfileで指定されているBoxenのバージョンだけを変更して script/boxen を実行してもおそらくエラーが発生します。

boxen/our-boxenをgit-pullでアップデートしてから script/boxen するのが正解。

puppet-boxenとour-boxenのおさらい

簡単におさらいしておくと

repo 役割
boxen/puppet-boxen boxenのコアモジュール
boxen/our-boxen boxenの容れ物

Puppetfileで指定しているのはコアモジュールの方のバージョンです。

容れ物のバージョン毎に対応しているコアのバージョンが微妙に異なっているっぽく、コアだけをバージョンアップしてもダメな訳です。コア自体はBoxenでバージョン管理されていますが、容れ物の方はgitで管理されています。

で、our-boxenのmasterは基本的に正しい組み合わせになっているので、our-boxenをアップデートして、そのときついてくるpuppet-boxenを使うと失敗が少ないです。

our-boxenをアップデートする

ローカルにあるBoxenのリポジトリは本来our-boxenをgit-cloneして、masterをプライベートなリポジトリに向けていると思います。なので、まず最初に本家のboxen/our-boxenをremoteに設定してやりましょう。

本家のリポジトリをupstreamという名前で登録
% git remote add upstream git://github.com/boxen/our-boxen.git
# 設定できてるか確認
% git remote -v | grep upstream
upstream        git://github.com/boxen/our-boxen.git (fetch)
upstream        git://github.com/boxen/our-boxen.git (push)

そしたらupstreamからpullします。

本家の変更を取り込む
% git pull upstream master

コンフリクトが発生したらよしなに解消してください。これでour-boxenのアップデートが完了したので、必要に応じて設定を更新してから script/boxen を実行します。

Boxenを実行する
% ./script/boxen

成功したら忘れずにコミットして、originにgit-pushしておきましょう。

originへ変更をpushする
% git add -A
% git commit -m 'Update our-boxen'
% git push origin master
33
33
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
33
33