Вероятно, проще всего переключить имя ветви, которую вы хотите сделать новым мастером, локально, а затем принудительно нажать на нее; пока мы на этом, мы можем на всякий случай сделать резервную копию старого мастера.
git branch -m master old-master
git branch -m testing master
# old master saved, new master is now `master`
git push -f origin master
# master overridden in the repo
git push -f origin old-master
git branch -d old-master
# Old master backed up, removed locally
Помните, что любому, кто сотрудничает с вами, необходимо разрешать любые конфликты, которые у них возникают между их ветвями и новым мастером.
Ветвь old-master
занимает очень мало места на сервере, так что это хорошая сеть безопасности на случай, если есть какая-то причина, по которой мы действительно, действительно должны к ней прибегнуть. Вы бы сделали что-то похожее на то, что мы только что сделали здесь, чтобы восстановить это.
git branch -m master erroneous-master
git checkout -b master origin/old-master
git push -f master origin/master
git push -f erroneous-master origin/erroneous-master
Мы спасаем плохого хозяина по той же причине; мы можем хотеть спасти вещи от этого.
git push origin :branch-to-remove
избавится от ненужных веток позже, когда вы уверены, что они вам не понадобятся.