LoginSignup
0
0

More than 5 years have passed since last update.

各.gitignoreが持つ関心について

Posted at

前置き

.gitignoreを正しく運用していますか?
プロジェクトの立ち上がり時にはきちんと考えられて作成をすると思いますが、開発が進んで行くと思いつきで対象リポジトリに存在する.gitignoreに要素を肉付けのように足して行く運用を良く目にする気がします。
当記事で.gitgnore毎が持つべき関心を考え、美しい状態とは何かを考えたいと思います。

.gitignoreは複数あるという考え

一般的にはリポジトリ毎に作られるものと各環境毎に作る.gitignore_globalの二つを元に考えられていると思います。
この2つの.gitignoreで運用することは十分可能ですが、さらに細分化させることが可能だと考えています。

細分化した.gitignore

チームで開発している場合以下のように細分することができるかと思います。

  • application.gitignore
  • repository.gitignore
  • team.gitignore
  • global.gitignore

それぞれが持つ関心

application.gitignore

リポジトリ内に複数のアプリケーションが作成される場合作られると考えています。
内容についてはそのアプリケーションで無視したい内容になります。
github/gitignoreの内容が一般的かと考えています。

repository.gitignore

リポジトリ内に一つのアプリケーションの場合はapplication.gitignoreの内容も足されます。
また、設定ファイルなども場合によってはここに追加されると思います。

team.gitignore

各メンバーに配布されるための共通.gitignoreになります。
チームの決まりとしてvscodeを利用する事が確定されているならこれに追加されるべきだと考えます。
ただし、この開発環境はリポジトリ毎に変わる場合ならそのリポジトリに収めるべきですし、逆に各個人に委ねている場合は個人でglobal.gitignoreとして管理するべきだと思います。

global.gitignore

各個人が管理するgitignoreです。チーム以下のスコープで確定されていない要素は個人で管理すると考えています。

まとめ

現実的な話、運用するのは全てリポジトリの.gitginoreに書き足すのが楽で確実です。
ですが、抽象的な話でしたがこの記事をきっかけに美しい.gitignoreについて検討し運用が出来ることになれれば幸いです。
自分もこういった運用ができるようになりたい。

0
0
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
0
0