Самое простое, что нужно сделать - это программный сброс.
Итак, ознакомьтесь с веткой вашей темы:
git checkout -b topic master
работа, работа, работа.
git commit
git commit
git commit
git commit
Доволен этим, вы можете сделать новый одиночный коммит поверх мастера
git reset --soft master
git commit
Теперь объединитесь с мастером (это будет перемотка вперед) и приведите в порядок ветку темы. (Обратите внимание, что вам не нужно делать это, если вы готовы запомнить или пометить, где находился мастер, и просто работать над мастером без ветвления, вы могли бы просто выполнить git reset --soft old-master
и git commit
, и вам не понадобятся эти этапы очистки.)
git checkout master
git merge topic
git branch -d topic