ファイルの履歴を削除する必要があったので色々調べて削除しました。
・現在のブランチのファイルをログも含めて削除する。(エラーが出れば-fオプションをつけて実行する。)
git filter-branch --tree-filter 'rm -f ディレクトリ/ディレクトリ2/ファイル名' HEAD
・全てのブランチからファイルをログも含めて削除する。
git filter-branch --tree-filter 'rm -f ディレクトリ/ディレクトリ2/ファイル名' HEAD --all
・reflogを削除
git reflog expire --expire=now --all
・git gcを実行
git gc --aggressive --prune=now
・git push –forceを実行
git push --force origin master
・git push –forceで該当ブランチにpushする場合
git push --force -u origin HEAD
・※ remote:error: denying non-fast-forward refs/heads/master … とエラーが出た場合は
下記のようにreceive.denynonfastforwardsをfalseにする。
git config receive.denynonfastforwards false
コメント