プロジェクトの開発中に、一時的なファイルやビルドアーティファクトを誤って Git にコミットしてしまうことがあります。通常、これらのファイルは .gitignore
に追加してリポジトリに含めないようにするのが一般的ですが、既にコミットされている場合、追跡から外す必要があります。
目次
手順
.gitignore
にファイルやフォルダを追加する
まず、追跡したくないファイルやフォルダを .gitignore
に追加します。たとえば、ビルドアーティファクトや一時ファイルを無視する場合は、以下のように記述します。
# 追跡しないファイルやフォルダを指定
build/
temp/
.env
.gitignore
に追加することで、今後これらのファイルやフォルダは新たに Git の追跡対象から外されますが、既にコミットされたものは追跡されたままです。
既に追跡されているファイルやフォルダをインデックスから削除
既にコミットされているファイルやフォルダを Git の追跡から外すには、以下のコマンドを実行してインデックスから削除します。
git rm -r --cached <ファイル名またはフォルダ名>
<ファイル名またはフォルダ名>
の部分には、追跡から外したいファイルやフォルダのパスを指定します。--cached
オプションを付けることで、ローカルのファイルは削除されず、Git の追跡からのみ外れます。
例として、ビルドディレクトリ build/
を追跡から外す場合は次のようにします。
git rm -r --cached build/
変更をコミット
インデックスから削除したファイルやフォルダの変更をコミットします。
git commit -m "Remove build directory from tracking"
これで、指定したファイルやフォルダは Git で追跡されなくなります。
リモートにプッシュ
最後に、変更をリモートリポジトリにプッシュします。
git push origin <your-branch>
<your-branch>
の部分には作業中のブランチ名を指定します。
まとめ
誤ってコミットしてしまった一時ファイルやビルドアーティファクトを Git の追跡から外す際は、次の手順を覚えておくと便利です。
.gitignore
に無視するファイルやフォルダを追加git rm --cached
コマンドでインデックスから削除- 変更をコミットしてリモートにプッシュ