How to remove a file from every commit in a branch.
This will effectively rewrite every commit to remove the markdown/things/index.md.
git filter-branch --tree-filter 'rm -f markdown/things/index.md' HEAD
But that might leave a final commit that would still show the file’s existence and contents. So this command might be more effective if you just want to rewrite the Git history completely:
git filter-branch --force --index-filter \
'git rm --cached --ignore-unmatch markdown/things/index.md' \
--prune-empty --tag-name-filter cat -- --all
Now push that commit back to GitHub.
git push -f