LoginSignup
36
43

More than 5 years have passed since last update.

gitignore.ioのススメ

Posted at

gitignore.ioのススメ

だいぶ古い内容ですが、同僚に質問されたので投稿。

結論

  • gitignore.ioは便利だよ
  • curlには-Lオプションが必要だよ
  • gitignore.ioをプロジェクトに適用しよう

gitignore.ioとは

gitignore.ioは、github/gitignoreリポジトリにコミットされた無視リストのテンプレートをWebからアクセスしやすいようにしたサービスです。
「java」や「osx」といったカテゴリ?に対して最適化された無視リストを提供してくれます。
.gitignoreの内容を検討する手間を軽減してくれると考えてください。

gitignore.ioをWebブラウザからの利用する

Webブラウザからgitignore.ioにアクセスしてください。
表示されたテキストボックスに、「java」や「osx」など無視リストに含めたいカテゴリを入力してGenerateボタンを押せば、.gitignoreに記述すべき内容が表示されます。

gitignore.ioをコマンドラインからの利用する

curlwgetといったコマンドからも利用できます。
サイトからのリダイレクト要求に応答する必要があるため、例えばcurlであれば-Lオプションを指定してください。
⇒ gitignore.ioのI/Fが変わったのでしょうか。。。 リダイレクト部分を説明したサイトは見つかりません

パラメータなしで実行すると、、、

簡単なヘルプが表示されます。
指定できるカテゴリを把握するため、まずは後述するlistにアクセスしましょう。

curl -L http://www.gitignore.io/api
output
gitignore.io help:
list - lists the operating systems, programming languages and IDE input types
:types: - creates .gitignore files for types of operating systems, programming languages or IDEs

指定できるカテゴリを一覧表示したい

/listをリクエストしてください。
指定できるカテゴリ一覧が出力されます。

curl -L http://www.gitignore.io/api/list
output
actionscript,ada,agda,alteraquartusii,android
anjuta,appbuilder,appceleratortitanium,appcode,appengine
  <中略>
xojo,yeoman,yii,yii2,zendframework
zephir

JavaとWindowsとMacにカテゴライズされたを無視リストを取得したい

/java,windows,osxをリクエストしてください。
指定したカテゴリにカテゴライズされた無視リストが出力されます。

curl -L http://www.gitignore.io/api/java,windows,osx
output
# Created by https://www.gitignore.io/api/java,windows,osx

### Java ###
*.class

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.ear

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*


### Windows ###
# Windows image file caches
Thumbs.db
ehthumbs.db

# Folder config file
Desktop.ini

# Recycle Bin used on file shares
$RECYCLE.BIN/

# Windows Installer files
*.cab
*.msi
*.msm
*.msp

# Windows shortcuts
*.lnk


### OSX ###
.DS_Store
.AppleDouble
.LSOverride

# Icon must end with two \r
Icon

# Thumbnails
._*

# Files that might appear in the root of a volume
.DocumentRevisions-V100
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
.VolumeIcon.icns

# Directories potentially created on remote AFP share
.AppleDB
.AppleDesktop
Network Trash Folder
Temporary Items
.apdisk

gitignore.ioをプロジェクトに適用する

2016-03-17時点で、.gitignoreimportincludeのような機能はありません。
gitignore.ioによる自動生成無視リストと、手動生成無視リストは共存させることはできませんでした。
運用でカバーしましょう。

.gitignore-make.sh
#!/bin/sh
cd $(cd $(dirname $0) && pwd)
(
    curl -L http://www.gitignore.io/api/java,windows,osx
    cat .gitignore-custom
) > .gitignore
.gitignore-custom
# 以下、手動で定義した無視リスト
log/
hoge/fuga.txt
36
43
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
36
43