msfukuiの日記

おおまさのみみはそらのみみ。

開発・評価環境で現在の git のブランチ名とハッシュ値を表示したい。

ある Rails アプリで、外部システムとの連携検証のための評価環境を作って運用しているのですが、今どのブランチのどのリビジョンで評価しているかを簡単に表示できないかな、というお話がありました。

以下のとても素敵な gem があることを思い出しまして、うまく使えないかなって思って、手元のサンプルアプリケーションでごにょこにょとやってみたので、以下自分用のメモです。

GitHub - dtaniwaki/rack-dev-mark: Show dev mark on development env

組み込み方

とりあえず gem を環境に追加します。

$ echo "gem 'rack-dev-mark'" >> Gemfile
$ bundle install
...
Bundle complete!

config/application.rb にお好みでこんな感じで表示形式を追加。
プロダクション環境以外で表示、タイトル表示の変更はやめてページ内のリボンだけ表示にして、表示箇所は右上にしてみます。

    config.rack_dev_mark.enable = !Rails.env.production?
    config.rack_dev_mark.theme = [Rack::DevMark::Theme::GithubForkRibbon.new(position: 'right', color: 'red')]

i18n の定義を書けるそうなので、 rack_dev_mark.ja.yml に日本語用の設定をこんな感じで追加。

ja:
  rack_dev_mark:
    development: "開発環境"
    test: "テスト環境"

環境を示すリボン表示にマウスオーバーした時に、REVISION ファイルに記録されたリビジョン番号を表示する実装になっている様なので、git のブランチ名とリビジョン番号の表示にはそちらを利用します。

結果として、,gitignore に REVISION ファイルを追加して、リリースと再起動のスクリプトに以下の雑な1行を仕込むのがよいのかなって思いました。

$ echo `git rev-parse --abbrev-ref HEAD`"("`git log -1 --pretty=format:"%h"`")" > REVISION

手元のサンプルアプリでは、マウスオーバーするとこんな感じで表示されました。
なんとなく良い感じがします。

お仕事の気分転換に、明日組み込んでみようと思います。さてうまくいくかなー。

追記(スクリーンショットを撮る)

今回 Macスクリーンショットを撮る方法(Command+Shift+3, 4)を初めて知りました。
公式ページ(Mac でスクリーンショットを撮る方法 - Apple サポート)で紹介しているところがとてもよいなって思います。

Windows はどうかなって思って見てみたら、以下があるものの Windows 8 のもので、どう探してみても 10 のものが公式では見つからないのでした。

「その情報は新しい場所に移動しました。」って..。移動先くらい書いとこうよー。
多分操作方法は変わらないんだと思いますが。