RubyMineで毎回自動生成される.ideaについて

f:id:ryoutaku_jo:20190513130147p:plain

【結論】

・RubyMineで毎回自動生成される.ideaは、チーム間でプロジェクト設定を共有する為のファイル

・但し、チーム全員がRubyMineを共通設定で使用しないのであれば、GitHubに上げると邪魔になる

・毎回Gitの監視下に入るのが面倒であれば、gitignore_globalに登録すれば、都度gitignoreに登録する手間が省ける

【目次】

【本題】

RubyMineを使用していると生成される.idea

RubyMineを使っていると、.ideaという謎のファイルが、勝手に生成されてGitの監視下に加わります。 今回は、これが何か調べました。

チーム間で設定内容を共有するもの

下記の公式サイトによると、以下の様な説明でした。

Projects - Help | IntelliJ IDEA

Project formats # In IntelliJ IDEA, there are two types of formats in which a project's configuration can be stored — the file-based format format (legacy) and the directory-based format (default and recommended).

For file-based projects, the IDE creates the .ipr, .iws and .iml files. For projects stored in the directory-based format, the IDE creates the.iml file and the .idea directory that keeps project settings.

どうやらプロジェクト設定を保存して、共有する為の物の様です。

全員がRubyMineを使用する訳ではない

同じ環境で開発を行えるという利点がある様ですが、エディタが違えば意味がありません。

不要なファイルがアップロードされていると、コードレビューの邪魔にもなりますので、特に利用していないのであれば、Gitの監視下から外しておくのが得策でしょう。

毎回gitignoreに登録するのは面倒

この.ideaは、毎回勝手に生成されますが、都度gitignoreに登録するのが面倒です。 また、他のメンバーに関係ないファイルがgitignoreに登録されているのも綺麗ではありません。

そういった個人の都合で毎回Gitの監視下から外したいのであれば、.gitignore_globalに登録するのが有用でしょう。

gitignore_globalは、全てのプロジェクトにおいて、登録したファイルをGitの監視下から外してくれます。

.gitignore_globalの設定方法

まず、下記のコマンドで.gitignore_globalを読み込む設定を行います。

git config --global core.excludesfile ~/.gitignore_global

次にホームディレクトリへ.gitignore_globalの作成と編集を行います。

$ vim ~/.gitignore_global

今回は、下記二種類のファイルを記述しました。

.idea/
.DS_Store

保存後、上記二つのファイルはGitの監視下から外れます。

参考情報

Projects - Help | IntelliJ IDEA

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

グローバルに.gitignoreを設定する方法 | vdeep

《今日の学習進捗(3年以内に10000時間に向けて)》

CKEditorの実装が概ね完了したが、プラグインの導入でかなり苦戦した。 やはりJavaScriptやWebpackなどフロント周りの知識が無いと、公式ドキュメントを読んでも内容の理解が難しい。 本日CTOとの1on1にて、まずはRailsを使いこなせる様にとアドバイス頂いたが、合間を見つけて、ドキュメントを理解できる程度の知識を身につけて行きたい。

学習開始からの期間 :157日
今日までの合計時間:1526h
一日あたりの平均学習時間:9.8h
今日までに到達すべき目標時間:1434h
目標との解離:92h
「10,000時間」まで、

残り・・・「8474時間!」