
私はgitを初めて使用しており、プロジェクトディレクトリをgithubにプッシュしようとしました。
以下は私が実行した手順です。
git init
git add .
git commit -m 'first commit'
git push <my repo address>
すると以下のエラーが発生します。
Counting objects: 95, done.
Delta compression using up to 32 threads.
Compressing objects: 100% (73/73), done.
Writing objects: 100% (77/77), 920.61 MiB | 27.90 MiB/s, done.
Total 77 (delta 37), reused 1 (delta 0)
remote: Resolving deltas: 100% (37/37), completed with 10 local objects.
remote: warning: File images/log is 60.77 MB; this is larger than GitHub's recom mended maximum file size of 50.00 MB
remote: error: GH001: Large files detected. You may want to try Git Large File S torage - https://git-lfs.github.com.
remote: error: Trace: c3704dac955cd6d24c55bfab021fbe2a
remote: error: See http://git.io/iEPt8g for more information.
remote: error: File images/sql-push-image1.iso is 349.21 MB; this exceeds GitHub's file size limit of 100.00 MB
remote: error: File images/sql-push-image1.SPA.bin is 570.62 MB; this excee ds GitHub's file size limit of 100.00 MB
remote: error: File images/sql-push-image2.SPA.bin is 348.69 MB; t his exceeds GitHub's file size limit of 100.00 MB
remote: error: File images/sql-push-image1.ova is 349.49 MB; this exceeds GitHub's file size limit of 100.00 MB
To https://github.com/mohandev/sql-qa.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://github.com/mohandev/sql-qa.git
多くの人がファイルを無視するために.gitignoreファイルを作成することを推奨しています。そこで、以下の内容の.gitignoreファイルを作成しました。
*.iso
*.bin
*.ova
次に以下のコマンドを実行します
git add .
git commit -m 'ignoring certian image files'
git push
しかし、再び同じエラーが発生しました。
この問題を解決するにはどうすればよいですか?
答え1
gitignore に次の内容だけを記述した場合:
*.iso
*.bin
*.ova
gitはルートディレクトリの*.iso、*.bin、*.ovaファイルを無視しますが、images/ディレクトリのファイルは無視しません。
あなたが試すことができます :
images/*.iso
images/*.bin
images/.ova
答え2
考えられる修正方法は次のとおりです:
git filter-branch -f --index-filter 'git rm --cached --ignore-unmatch images/*.bin images/*.ova images/*.iso'
説明どおりここ