Intellij系のIDEと.ideaディレクトリについて

はじめに

私はエディタにrubymineを使っているのだが、新規にプロジェクトを作成しようとすると、.ideaというディレクトリが勝手に生成させるのが気になっていた。

 

前に少し調べたとき、「.ideaディレクトリ配下にはIntellij系のIDEIDE情報が入る」という情報を見て、ふ〜ん。エディタの設定的なのが入ってるのかな?ぐらいの理解で、個人開発ならあんま気にしなくてよさそうだなあと思い、gitignoreに/.ideaを追加していたのだけど、今回また目にしたことで、ちゃんと理解したい気持ちが湧いてきた。

 

そこで調べた。

IntellijIDEとは

  • JetBrain社が提供する開発統合環境
  • rubymine、pycharm、phpstormなど、扱う言語に向いたものがある

.ideaディレクトリについて

Projects \| IntelliJ IDEA

によると、Intellij IDEはデフォルト形式として、ディレクトリベースのプロジェクトの場合、IDEは.imlファイルと、プロジェクトの設定を保存する.ideaディレクトリを作成する。

.imlファイルについて

モジュール構造設定 \| IntelliJ IDEA

モジュール \| IntelliJ IDEA

によると、.imlファイルは、モジュールの構造設定ファイル。

IDEでは、ひとつのプロジェクトは一つ以上のモジュールからできていおり、それらを管理する。

どう扱えばいいのか?

How to manage projects under Version Control Systems – IDEs Support \(IntelliJ Platform\) \| JetBrains

によると、「ユーザー固有の設定を保存するファイル以外は共有するべき。」とある。

つまり、

  • workspace.xml
  • usage.statistics.xml
  • tasks.xml

以外はだいたいコミットしたほうがいいとのこと。

ただし、.gitignoreでどう設定するかはチーム内で要協議だと思われる。

感想

.ideaディレクトリへの理解が深まった。

ide使ってチーム開発するときは、このへんも要確認だなあ。

とりあえず個人開発では、

.idea/**/workspace.xml
.idea/**/statistics.xml
.idea/**/tasks.xml

を.gitignoreに記述して開発を行おうと思う。