まだ .gitignore を手で書いてるの?(giboの使い方)

最終更新日

はじめに

煽りタイトルです、ごめんなさい。m(._.)m ゴメン

Visual Studio・Unity・Eclipseそれぞれでの開発にソースコードバージョン管理に Git を採用しているプロジェクトは多いかと思います、今回は Git で使われる無視ファイル(.gitignore)のファイルを自動生成する方法を記事にしてみました。

gibo とは

今まで .gitignore を手書きしていた方、「Tortoise Git」などのGUIで生成していた方など色々な方がいらっしゃると思います。

しかしこのファイルは、Visual Studio なら自動生成されるファイルなどのパターンが決まっているためテンプレートとして作成して使いまわることができます。

gibo はこの使いまわしがきくテンプレートとして .gitignore を生成できます。

gibo のインストール

Macの場合

以下コマンドでインストール

$ brew install gibo

Windowsの場合

Github からリポジトリを取得して、gibo.bat ファイルが実行できるようにパスを通しましょう。

gibo がインストールされている事を確認するために、「gibo version」コマンドを実行してみましょう、以下のようにバージョンが出力されていれば正常です。

$ gibo version
gibo 2.1.2 by Simon Whitaker <sw@netcetera.org>
https://github.com/simonwhitaker/gitignore-boilerplates

gibo の使い方

.gitignore を生成

.gitignore を生成したい、フォルダをコマンドプロンプトで開いて以下のコマンドを実行しましょう。

  • Unity の場合、Unity と入力
  • VisualStudio(C#)の場合、VisualStudio と入力
    • C#、csharp とかではないのでご注意ください!!
$ gibo dump Unity > .gitignore

.gitignore の中身はこんな感じで生成されます、Unityでの開発で、Tempフォルダ、Libraryフォルダが初期状態で無視リストに登録されています、便利ですね!!

### Unity

# This .gitignore file should be placed at the root of your Unity project directory

/[Ll]ibrary/
/[Tt]emp/
/[Oo]bj/
/[Bb]uild/
/[Bb]uilds/
/[Ll]ogs/

# Never ignore Asset meta data
!/[Aa]ssets/**/*.meta

# Uncomment this line if you wish to ignore the asset store tools plugin
# /[Aa]ssets/AssetStoreTools*

# TextMesh Pro files
[Aa]ssets/TextMesh*Pro/

# Visual Studio cache directory
.vs/

# Gradle cache directory
.gradle/

# Autogenerated VS/MD/Consulo solution and project files
ExportedObj/
.consulo/
*.csproj
*.unityproj
*.sln
*.suo
*.tmp
*.user
*.userprefs
*.pidb
*.booproj
*.svd
*.pdb
*.mdb
*.opendb
*.VC.db

# Unity3D generated meta files
*.pidb.meta
*.pdb.meta
*.mdb.meta

# Unity3D generated file on crash reports
sysinfo.txt

# Builds
*.apk
*.unitypackage

# Crashlytics generated file
crashlytics-build.properties

テンプレート一覧

以下のコマンドで使えるテンプレートの一覧がわかりますので、皆さんの環境でも確認してみてください。

$ gibo list
=== Languages ===

Actionscript
Ada
Agda
Android
AppceleratorTitanium
AppEngine
ArchLinuxPackages
Autotools
C
C++
CakePHP
CFWheels
ChefCookbook
Clojure
CMake
CodeIgniter
CommonLisp
Composer
Concrete5
Coq
CraftCMS
CUDA
D
Dart
Delphi
DM
Drupal
Eagle
Elisp
Elixir
Elm
EPiServer
Erlang
ExpressionEngine
ExtJs
Fancy
Finale
ForceDotCom
Fortran
FuelPHP
Gcov
GitBook
Go
Godot
Gradle
Grails
GWT
Haskell
Idris
IGORPro
Java
JBoss
Jekyll
JENKINS_HOME
Joomla
Julia
KiCad
Kohana
Kotlin
LabVIEW
Laravel
Leiningen
LemonStand
Lilypond
Lithium
Lua
Magento
Maven
Mercury
MetaProgrammingSystem
Nanoc
Nim
Node
Objective-C
OCaml
Opa
OpenCart
OracleForms
Packer
Perl
Perl6
Phalcon
PlayFramework
Plone
Prestashop
Processing
PureScript
Python
Qooxdoo
Qt
R
Rails
RhodesRhomobile
ROS
Ruby
Rust
Sass
Scala
Scheme
SCons
Scrivener
Sdcc
SeamGen
SketchUp
Smalltalk
Stella
SugarCRM
Swift
Symfony
SymphonyCMS
Terraform
TeX
Textpattern
TurboGears2
Typo3
Umbraco
Unity
UnrealEngine
VisualStudio
VVVV
Waf
WordPress
Xojo
Yeoman
Yii
ZendFramework
Zephir

=== Global ===

Anjuta
Ansible
Archives
Backup
Bazaar
BricxCC
Calabash
Cloud9
CodeKit
CVS
DartEditor
Diff
Dreamweaver
Dropbox
Eclipse
EiffelStudio
Emacs
Ensime
Espresso
FlexBuilder
GPG
Images
JDeveloper
JEnv
JetBrains
Kate
KDevelop4
Lazarus
LibreOffice
Linux
LyX
macOS
MATLAB
Mercurial
MicrosoftOffice
ModelSim
Momentics
MonoDevelop
NetBeans
Ninja
NotepadPP
Octave
Otto
Patch
PSoCCreator
PuTTY
Redcar
Redis
SBT
SlickEdit
Stata
SublimeText
SVN
SynopsysVCS
Tags
TextMate
TortoiseGit
Vagrant
Vim
VirtualEnv
Virtuoso
VisualStudioCode
WebMethods
Windows
Xcode
XilinxISE

シェアする

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

コメントする