git filter-repo: can it be used on a specific branch?

The 'Miscellaneous Options' includes --refs

--refs <refs+>

Limit history rewriting to the specified refs. Implies --partial.
In addition to the normal caveats of --partial (mixing old and new history, no automatic remapping of refs/remotes/origin/* to refs/heads/*, etc.), this also may cause problems for pruning of degenerate empty merge commits when negative revisions are specified.

And... it will move tags, as I documented in "Git Subdirectory Filter with tags", which does uses --refs, as an example.