VS Code で Git のコミットをしようとした時、画面上部にこんな警告が出ることはありませんか?
Files too large The following files are over 100MB. If you commit these files, you will no longer be able to push this repository to GitHub.com.
日本語に訳すと「100MB超えのデカすぎるファイルがあるぞ! これコミットしたらGitHubにプッシュできなくなるぞ!」 という警告です。
これが出たときに「まあいいか」と無視してコミットボタンを押すと、後で地獄を見ます。 正しい対処法を解説します。
なぜ警告が出るのか?
GitHub には 「1ファイルあたり100MBまで」 という厳格な制限があるからです。 リポジトリ全体の容量ではなく、たった1つでも100MBを超えるファイルが含まれていると、プッシュ(アップロード)が100%拒否されます。
VS Code は親切にも、プッシュで拒否される未来を予知して、「今のうちにやめておけ」と止めてくれているのです。
絶対にやってはいけないこと
❌ 「警告を無視してコミットする(Commit Anyway)」
これをやってしまうと、ローカルの履歴に「巨大ファイルを追加した」という記録が残ります。 その後、そのファイルを削除してコミットし直しても、履歴の中に巨大ファイルが残っている限り、GitHub はプッシュを受け付けてくれません。
こうなると、過去のコミット履歴を書き換える(git reset や git filter-branch)という、初心者にはハードルの高い修復作業が必要になってしまいます。
正しい対処法(3ステップ)
警告が出たら、以下の手順で冷静に対処しましょう。
1. コミットを中止する
まずはコミットボタンを押さずに、作業をストップします。
2. 巨大ファイルを特定して除外する
「ソース管理(Source Control)」タブの「変更(Changes)」一覧を見てください。 動画ファイル(.mp4)、データベース(.sql, .db)、圧縮ファイル(.zip)、あるいは機械学習モデル(.bin)などが混ざっていませんか?
そのファイルの横にある 「ー(ステージング解除 / Unstage Changes)」 ボタンを押して、コミット対象から外します。
3. .gitignore に追加する(二度と出ないように)
その巨大ファイルが、GitHub で管理しなくていいもの(一時的なデータなど)であれば、「無視リスト」に入れてしまいましょう。
- ファイルを右クリック
- 「Add to .gitignore(.gitignoreに追加)」 を選択
これで、そのファイルは Git の管理対象外となり、二度と警告は出なくなります。
どうしても巨大ファイルを上げたい場合
「どうしてもこの動画ファイルをGitHubで管理したいんだ!」という場合は、Git LFS (Large File Storage) という仕組みを使う必要があります。 ただし、セットアップが少し手間なのと、無料で使える容量に制限があるため、基本的には Google Drive など別の場所に置いてリンクを貼る のがおすすめです。
よくある質問:node_modules はコミットしなくていいの?
この警告が出る原因として一番多いのが「node_modules フォルダを間違ってコミットしようとしている」ケースです。
Q. Vercel などの CI/CD でデプロイするとき、node_modules がないと動かないのでは?
A. いいえ、コミットしてはいけません。
node_modules はフォルダ構成が膨大(数万ファイル)になりやすく、Git で管理するには重すぎます(これが Files too large の原因になります)。 Vercel や GitHub Actions などのデプロイ環境は、サーバー上で自動的に npm install (または yarn install) を実行して、その場で node_modules を生成する仕組みになっています。
そのため、「ソースコード」には含める必要がありません。
ただし、以下の2ファイルは必ずコミットしてください:
- package.json
- package-lock.json (または yarn.lock)
これさえあれば、サーバー側が「何が必要か」を理解して、勝手にインストールしてくれます。
まとめ
- 警告が出たら: 即座に手を止める。コミットしない。
- 対処法: そのファイルをステージングから外し、.gitignore に入れる。
- もしコミットしてしまったら: git reset –soft HEAD^ でコミットを取り消してやり直す。
VS Code の警告は、未来のトラブルからあなたを守ってくれています。素直に従っておくのが吉です。