Скопировать ошибочные коммиты из ветки B в ветку A:
git rebase --onto A origin/B B
Тут три параметра.
A — ветка, куда переносим.
origin/B — ссылка на старое состояние, до ошибочных правок
B — ветка, откуда переносим.
Затем откатить ветку B:
git switch B
git reset origin/B
Предполагается, что вы ещё не успели отправить испорченную ветку B в вышестоящий origin.
В противном случае вместо origin/B придётся подставить корректный SHA последнего «хорошего» коммита.
Если же вы ещё вообще не успели ничего закоммитить, то достаточно просто переключиться в ветку A.
Изменения сами последуют за вами. Если не возникнет конфликта, то продолжите работать как ни в чём не бывало)