1分でわかる! .gitignore自動生成ツール「gibo」の使い方

じぇしー


1分でわかる! .gitignore自動生成ツール「gibo」の使い方

こんにちは、フロントエンドエンジニアのじぇしーです。普段gitを使って開発をしている皆さん、.gitignoreをご存知でしょうか?

.gitigoreは、gitでバージョン管理しないファイルやディレクトリを指定しておく、設定ファイルです。たとえば、プロジェクトルート(git initした場所)に、次のように書いた .gitignore ファイルを置くと、 dist/ ディレクトリがgitのバージョン管理から除外されます。

dist/

このように .gitignoreは、 Thumbs.db や .DS_Store など、プロジェクトに関係ないOSごとの隠しファイルを除外したり、ビルド後のファイルを除外したりするのに使われます。

gitを使っていると必ず利用する機能の一つですが、いちいち前の案件から .gitignore をあさってきてコピするのは面倒ですし、多人数で作業する際は自分が使ったことがないIDEやOSなどもフォローしなくてはならず大変です。
giboは、そんな便利だけど面倒な .gitigore の作成をコマンド一発で作成してくれます。

インストール

giboはcuiツールなので、 homebrewを使って簡単にインストールできます。

$ brew install gibo

以下のコマンドでバージョン情報が出てくればインストールできています。

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

使い方

使い方は簡単です。例えば mac(OSX) と windows の設定ファイルを除外したいときはプロジェクトルートで以下のようにすればいいだけ。

$ gibo osx windows >> .gitignore

>> はgiboの機能ではなく、OS標準の機能です。 >> の左側のコマンドが標準出力した文字情報を、右側のファイルの末尾に追記します。ファイルは事前に作成しておかなくても、指定したファイルがない場合は新規に作成します。

> とすると追記せずに上書きになり、自分で書いた .gitignore が消えてしまいますのでご注意ください。

ここまでのご説明でお分かりかもしれませんが、 gibo は単に文字情報を出力するだけの単純なツールなので、OS標準の様々なコマンドと組み合わせることができます。
例えばmacの場合、以下のようにすると gibo が出力した情報をクリップボードにコピーすることもできます。

$ gibo osx windows | pbcopy

もちろん、単に以下のように実行すれば、ターミナル上に直接結果が出力されます。

$ gibo osx windows

### https://raw.github.com/github/gitignore/8f35779cefbabdca21cfc4cda55abb1290d59fd9/Global/osx.gitignore

*.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon

…

gibo に指定できるソフトウェアのリストは以下のコマンドで一覧できます。

$ gibo -l

=== Languages ===

Actionscript		GitBook			Python
Ada			Go			Qooxdoo
Agda			Gradle			Qt
Android			Grails			R
AppceleratorTitanium	GWT			Rails
AppEngine		Haskell			RhodesRhomobile
ArchLinuxPackages	Idris			ROS
Autotools		IGORPro			Ruby
C++			Java			Rust
C			Jboss			Sass

…

giboで利用できるコマンド一覧

giboのヘルプが17行しかなかったので意訳してみました。
簡単かつ強力なツールなのでどんどん使っていきたいですね。

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

gitignoreのテンプレは github.com/github/gitignore から引っ張ってきてます

使い方:
    gibo [オプション]
    gibo [テンプレ名 テンプレ名...]

例:
    gibo Python TextMate >> .gitignore

オプション:
    -l, --list          giboで使用できるテンプレ一覧
    -u, --upgrade       テンプレを最新のものに更新する
    -h, --help          このヘルプを表示する
    -v, --version       giboのバージョンを表示する

同様のツール

同様のツールとして、gitignore.ioがあります。
こちらのほうが若干スター数は多いので、そういう意味ではメジャーなツールですね。

使用方法はほぼ同じなので、使いたい方を使いましょう!

gitignore.ioは、webインターフェースも提供しています。
https://www.gitignore.io/
CLIになれない人は、こちらを利用してもいいかもしれません。

また、githubがメンテナンスしている github/gitignore というリポジトリもあるので、ぜひ参考にしてみてください!

それでは皆さん良いgitライフを!

じぇしー
この記事を書いた人
じぇしー

フロントエンドエンジニア

関連記事