Git:すべてのビンフォルダーとOBJフォルダーの内容を再帰的に「gitrm」する必要があります
質問
偶然誰かがビンとOBJフォルダーをすべてリポジトリにコミットしました(そのようなフォルダーは約40個あります)。やりたいです git rm -r
これらすべてのフォルダーに。これを行うコマンドはありますか?
解決
バックアップがあります、
find . -type d -name bin -exec git rm -r {} \;
find . -type d -name obj -exec git rm -r {} \;
アップデート
Bashを使用すると、Shopt Globstarを設定し、幸せになることができます。
shopt -s globstar
git rm -r **/{obj,bin}/
最後に、リポジトリの歴史からこれらを削除する必要がある場合は、 git filter-branch
セクションを読んでください 「オブジェクトの削除」 から プロgit book
他のヒント
戻ったら(履歴のファイルを保持します)、またはコミットをリセットした後、
git reset --hard
これらが無視されたら、ファイルが無視されると、
git clean -xdf
ソリューションを再構築する前に、それを使用してクリーンアップします。 VSは、別のブランチまたはマージのチェックアウトの後でも、いくつかのDLLを使用しているようです。
ブランチをフィルタリングするために頼る必要はありません。インタラクティブなリベースが行います。 -preserve-mergesフラグを覚えておいてください。
お役に立てれば。
別のオプションは、問題のコミットを元に戻すことです git revert
.
所属していません StackOverflow