はじめに
git管理化から特定のファイルなどを無視したければ.gitignoreに追加します。
しかもだいたいが適宜気づいたら、つどつど。
ただ、言語、フレームワーク、ツールなどのファイルは
新しいプロジェクトのたび x 適宜気づくたびに追加するのは面倒です。
そこで、
今回はお決まりのgitignoreテンプレを提供してくれるgitignore.ioのメモ

アジェンダ
1. gitignore.ioとは
公式サイトはこちらです。 https://www.gitignore.io/
Create useful .gitignore files for your project
公式ページからの引用ですが、有用な.gitignoreを作ってくれる君ですね。
また、テンプレ集という意味だと
https://github.com/github/gitignore もあるので見てみると良いかもしれないです。
2. gitignore.ioをcurlで使ってみる
使い方は簡単。
https://www.gitignore.io/api/${言語やツール} と指定するだけです。
ためしにvim用のgitignore
$ curl -L -s https://www.gitignore.io/api/vim # Created by https://www.gitignore.io/api/vim ### Vim ### # swap [._]*.s[a-v][a-z] [._]*.sw[a-p] [._]s[a-v][a-z] [._]sw[a-p] # session Session.vim # temporary .netrwhist *~ # auto-generated tag files tags # End of https://www.gitignore.io/api/vim
標準出力に出力されるので、そのまま.gitignoreを作るなり追記するなりでも良さそうです。
# 追記 curl -L -s https://www.gitignore.io/api/vim >> .gitignore
また、同時に複数指定することもできます。
$ curl -L -s https://www.gitignore.io/api/vim,java # Created by https://www.gitignore.io/api/vim,java ### Java ### # Compiled class file *.class # Log file *.log # BlueJ files *.ctxt # Mobile Tools for Java (J2ME) .mtj.tmp/ # Package Files # *.jar *.war *.ear *.zip *.tar.gz *.rar # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml hs_err_pid* ### Vim ### # swap [._]*.s[a-v][a-z] [._]*.sw[a-p] [._]s[a-v][a-z] [._]sw[a-p] # session Session.vim # temporary .netrwhist *~ # auto-generated tag files tags # End of https://www.gitignore.io/api/vim,java
3. gitignore.ioをbashのコマンドにする
公式のまんまですが下のようにbashのfunctionにしてしまいます。
echo "function gi() { curl -L -s https://www.gitignore.io/api/\$@ ;}" >> ~/.bash_profile && source ~/.bash_profile
使ってみる
# bashの設定に追加
$ echo "function gi() { curl -L -s https://www.gitignore.io/api/\$@ ;}" >> ~/.bash_profile && source ~/.bash_profile
# 打ってみる
$ gi vim
# Created by https://www.gitignore.io/api/vim
### Vim ###
# swap
[._]*.s[a-v][a-z]
[._]*.sw[a-p]
[._]s[a-v][a-z]
[._]sw[a-p]
# session
Session.vim
# temporary
.netrwhist
*~
# auto-generated tag files
tags
# End of https://www.gitignore.io/api/vim
4. gitignore.ioをgit aliasにしてgit ignore xxxで使えるようにする
bash的なコマンドも良いですが、どうせならgitコマンドぽく使いたいですよね。
こちらも公式のまんまですが、
以下のようにするとgitのsubコマンドのように使えます。
git config --global alias.ignore '!gi() { curl -L -s https://www.gitignore.io/api/$@ ;}; gi'
使ってみる
# aliasにする前
# 当然怒られる
$ git ignore vim
git: 'ignore' is not a git command. See 'git --help'.
# aliasにする
$ git config --global alias.ignore '!gi() { curl -L -s https://www.gitignore.io/api/$@ ;}; gi'
# どや!
$ git ignore vim
# Created by https://www.gitignore.io/api/vim
### Vim ###
# swap
[._]*.s[a-v][a-z]
[._]*.sw[a-p]
[._]s[a-v][a-z]
[._]sw[a-p]
# session
Session.vim
# temporary
.netrwhist
*~
# auto-generated tag files
tags
# End of https://www.gitignore.io/api/vim
おわり
こういうテンプレは自分でメンテしてくのも大変だし
お任せできるって素敵ですね\(^o^)/