How to delete one folder / directory using BFG repo cleaner?

How do I delete only one directory using BFG?

The help says:

delete folders with the specified names (eg '.svn', '*-tmp' - matches on folder name, not path within repo)

Which seems to mean that --delete-folders "config" will match all folders named config, anywhere in the repository.

  • Removing unwanted files from history including all refs with filter-branch
  • How to merge several Git repos into one and interleave histories
  • Split git repository while preserving and scoping-down branches
  • remove file from all git history
  • How to batch-replace *all* instances (content, filenames and commit messages) of *Foo* to *Bar* in a repo in a single, simple step?
  • Delete last 2 commits (not pushed) in Git, keeping changes
  • Rebase entire development branch onto new master branch
  • Merge 2 branches into single branch
  • One Solution collect form web for “How to delete one folder / directory using BFG repo cleaner?”

    I found the answer here: remove files from specific path

    The author of BFG says it can’t be done, unless you use a special command to dump all blobs for a given directory to a text file, and then use –strip-blobs-with-ids and provide that text file.

    [UPDATE]
    This doesn’t work for me. I run the command:

    git log --format=%H -- cms/assets/ | xargs -IcommitId git rev-parse commitId:cms/assets/

    I get a list of 8 blob ids. I put those in text file, then I exec bfg -bi ~/tmp/blob-ids, and BFG exits saying: BFG aborting: No refs to update - no dirty commits found??

    Git Baby is a git and github fan, let's start git clone.