読者です 読者をやめる 読者になる 読者になる

はむはむエンジニアぶろぐ

このブログのコンセプトは"ハッキングの為なら愛する家族を傷つけることをいとわない" 自分にとってエンジニアリングは "手段ではなく生きる目的" である

.gitignoreをエイリアスコマンド一つで簡単に作れるようにした

f:id:secret_hamuhamu:20150405195300p:plain
.gitignoreの生成をアシストしてくれるツールとしてgibo というものがあります。
giboを使えば、言語やフレームワークに合わせて.gitignoreを標準出力してくれます。
なんて便利なんでしょう。
でも、2つ不満がります。

  1. コマンド名を忘れる
  2. 標準出力するだけで.gitignoreを作ってくれない

これらを解決するために、エイリアスコマンドでインターフェースを隠蔽し機能追加した。

Usage

インターフェースはこんな感じ。

$ git make-gitignore Ruby
$ git make-gitignore Symfony

make-gitignoreの後ろに言語またはフレームワークを指定すると、.gitignoreを作ってくれる。

準備

内部でgiboを使用するのでインストールする必要があります。
macの場合は brew install gibo でOK。

$ gibo --help

gibo 1.0.4 by Simon Whitaker <sw@netcetera.org>
https://github.com/simonwhitaker/gibo

Fetches gitignore boilerplates from github.com/github/gitignore

Usage:
    gibo [options]
    gibo [boilerplate boilerplate...]

Example:
    gibo Python TextMate >> .gitignore

Options:
    -l, --list          List available boilerplates
    -u, --upgrade       Upgrade list of available boilerplates
    -h, --help          Display this help text
    -v, --version       Display current script version

Exampleに書いてあるとおり、標準出力を.gitignoreに向ける必要があります。
Unixの原則的に正しいような気もしますが、自動で.gitignoreを作って欲しいです。

エイリアスコマンドを作成

giboって.gitignore boilerplatesの略らしいけど、私はすぐコマンド名を忘れるので覚えやすいコマンド名にします。
.gitconfigのaliasからgiboを呼び出すようにします。

[alias]
    make-gitignore = !sh -c 'gibo ${0} > .gitignore'

これで.gitignoreを簡単に作れるようになりました。

$ git make-gitignore Ruby
$ git make-gitignore Symfony