MRが楽しい

MRやVRについて学習したことを書き残す

GitHubで100MB以上のファイルをコミットしてしまった場合の応急処置

本日は GitHub の小ネタ枠です。
GitHubで100MB以上のファイルをコミットしてしまった場合の応急処置について記事にします。

this exceeds GitHub’s file size limit of 100.00 MB

GitHub に100MB以上のファイルサイズを持つファイルを含んだコミットをプッシュすると以下のエラーが表示され、プッシュに失敗します。

this exceeds GitHub’s file size limit of 100.00 MB

docs.github.com

本エラーを回避するにはファイルサイズを 100MB 以下に変更するか、 GitLFS を用いて別の場所に 100MB 超のファイルをアップロードする必要があります。
また 100MB 以下のファイルに変更する場合も、100MB 以上のファイルが含まれるコミットが存在する場合はエラーになってしまうため、対象のコミットを一旦取り消す必要があります。

本記事では応急処置として100MB 以上のファイルのコミットを取り消しす対処を紹介します。

ファイルのコミットを削除する場合

100MB 以上のファイルのコミットを削除する場合、以下の手順でコミットの修正を実施します。

1.対象のファイルを追加したコミットを削除する
2.100MBのファイルを削除する
3.改めてその他の変更ファイルをコミットする

以下のコマンドで git のログを表示し、 100MB 以上のファイルをコミットを確認します。

git log

f:id:bluebirdofoz:20210330095253j:plain

以下のいずれかのコマンドでコミットを削除します。
[reset]はコミットの削除コマンドで、[--soft]オプションは現在のファイルを変更せずにコミットを削除します。

・コミットIDを指定する場合

git reset --soft (コミットID)

f:id:bluebirdofoz:20210330095302j:plain

・最新コミットを指定する場合

git reset --soft HEAD^

f:id:bluebirdofoz:20210330095310j:plain

これでコミットが削除されました。
f:id:bluebirdofoz:20210330095318j:plain

後は 100MB 以上のファイルを削除した状態を再コミットすれば、プッシュが実行できます。

参考ページ

reject.tokyo