Unfortunately we accidently checked in a large binary file some time ago and until today nobody noticed. Now I want to drop that commit and have the remaining history as it
I'd go with filter-branch:
filter-branch
git filter-branch --prune-empty --index-filter ' git rm --cached --ignore-unmatch path/to/file ' --all