この質問は、git 履歴の書き換えに関するものです。6 か月前に、リポジトリの既存のサブフォルダーに変更を加えることにしましたが、気が変わって、それと関連するすべての履歴を元に戻したいと考えています。サブフォルダーの外側の変更はそのままにしておく必要があることに注意してください。
したがって、具体的には、特定の日付以降、レポのサブフォルダーの 1 つで行われたすべての変更の履歴を削除しようとしています。
私が望んでいる最終結果は、その日付以降にサブフォルダーで編集/追加/削除が行われたことがないように見えるはずです.
Remove file from git repository (history)への回答、およびhttp://dalibornasevic.com/posts/2-permanently-remove-files-and-folders-from-a-git-repositoryへの回答を見ると、最も近い私これは次のとおりです。
git filter-branch --index-filter 'git rm -r -f --cached --ignore-unmatch TheFolderToRemove' --prune-empty --all xxxxxx..HEAD
git reset --hard
git remote rm origin
rm -r .git/refs/original/
git reflog expire --expire=now --all
git gc --aggressive
git prune
これにより、サブフォルダー内のすべてのファイルが削除されます。
誰かがこれを変更して、フォルダ内に適用された変更を削除する方法を教えてもらえますか? どうもありがとう