Contents
今日も今日とて
日々の業務で Git は欠かせないツールの1つですが、
Git でソースを管理している場合、このファイルは変更を追っかけないで欲しいな〜、このファイルは Git の管理対象から外したいな〜
ってなること多いと思うんですが、
そういう時にいつもやり方を忘れるので…自分用のメモという意味合いも込めて今回は、
という内容を中心に書いていきたいと思います。
前回記事はこちらから↓
まず gitignore の仕様を確認する
基本的には、 gitignore ファイルの中に Git の管理対象から外したいファイル名を記載すれば、それらは Git の管理対象には含まれません。
が!!
既にそのファイルをインデックスに登録( git add )していたり、過去にコミット履歴がある場合は、ignore してくれません。
なので最初に環境構築する際に無視したいファイルを gitignore に書いておくのが一番良いのですが、
途中で「あ〜これも外したいやつ…」ってなることはあるあるだと思いますので、そういった時の対処法を下記に記載します。
gitignore を使ってファイルを Git の管理対象から外す方法
ファイルを管理対象から外したい場合
下記は index.php を削除する場合の例です。
$ git rm –cached index.php
フォルダごと管理対象から外したい場合
下記は public フォルダ以下のファイルを全て管理対象から外す場合の例です。上記に -r オプションを付けます。
$ git rm -r –cached /public/
これでファイルが git の管理対象から外れたので、あとは変更を commit 、push すれば完了。
$ git add .
$ git commit -m “add files to gitignore”
$ git push origin xxx // xxx はリモートのブッシュ先
gitignore ファイルの書き方
上記のようにならないように、Git の管理対象から外したいファイルは、リポジトリ作成時やクローン時に設定するのが一番良いと思います。
その際の書き方をいくつか記載します。
gitignore ファイル内では、「 * 」や「 ? 」などのワイルドカードが使えます。「 * 」は任意の長さの文字、「 ? 」任意の1文字、を表しています。
詳しくはこちらから↓
上記を踏まえて書き方の例をいくつか挙げてみます。下記では、フォルダ名は例として public としています。
#拡張子が php のファイル全て
*.php
# public フォルダ以下全て
/public/
#public フォルダ以下の全ての js ファイル
/public/*.js
# sample の語尾に任意の一文字が含まれる js ファイル全て
sample?.js
「 * 」はよく見かけるんですけど、「 ? 」は正直見たことないな…けど調べてるうちに出てきたので、書いておきます。
未来の自分がもしかしたら使うかも…?
まとめ
いかがだったでしょうか。
今回は、gitignore を使ってファイルを Git の管理対象から外す方法をまとめてみました。
さて、ちゃんとまとめたから次回は忘れないぞーー
あとどうでもいいけど今回の記事のアイキャッチの Git のロゴは canva の素材で自作したんですが(どんだけ暇なの)、canva 便利なんですけどやっぱり色々制約あって自由に作れないので、Photoshop 有料に変えようかな〜〜と思っています ^^;
ここまでお読みいただき、ありがとうございました!