ローカルリポジトリだけ確実にGitの追跡から除外する方法

  • 2020年10月30日
  • 2020年10月30日
  • Git

プログラミングにおいて、今やバージョン管理システムのGitはなくてはならないものになっています。

そんなGitですが、使っているとたまに非常に困った場面に遭遇することがあります。

そのうちの一つが知らないうちに共有するとマズイファイルがリモートリポジトリに上がっていたパターンです。

具体的には、環境によって設定値が異なったりする場合に、誰かが自分の環境用の設定ファイルを上げてしまった…といった場合になります。

Gitのようなバージョン管理ツールでは、”ファイルを削除した”という事実も履歴となるため、単純にファイルを削除しただけでは解決するどころか、ほかのメンバーの設定ファイルもプルをしたタイミングで削除されてしまう、といった現象が発生してしまいます。

そうなってしまった場合の対症療法的な対処法として、ローカルリポジトリに、特定のファイルをバージョン管理上から無視してもらうように設定することで回避できます。

設定はコマンド上から行います。

git update-index --skip-worktree 除外するファイルのパス名

このコマンドで指定されたファイルは、以降リモートリポジトリで何らかの変更があっても一切反映されなくなります。

可能であれば、リモートリポジトリ側の履歴を修正するのが一番なのですが、もしどうしようもなくなってしまった場合は試してみてください。

参考:

git の監視から逃れる方法 – Qiita

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG