Вы можете удалить пару команд.Это делает то же самое:
# you have to have the branch checked out to pull, since pulling means merging
# into master, and you need a work tree to merge in
git checkout master
git pull
# no need to check out first; rebase does the right thing with two arguments
git rebase master feature_branch
git checkout master
git merge feature_branch
# git push by default pushes all branches that exist here and on the remote
git push
git checkout feature_branch
Строго говоря, слияние с мастером гарантированно будет быстрой перемоткой вперед (тривиальное слияние), поэтому на самом деле ему не нужно рабочее дерево, но на самом делевстроенный способ пропустить оформить заказ.Есть обходные пути, например, вставка в тот же репозиторий: git push . feature_branch:master
(безопасно, но странно) или прямое обновление ссылки: git update-ref master feature_branch
(небезопасно - не проверяет, есть ли ускоренная перемотка вперед), но обычно вы можете простобыстрое переключение ветвей.
Также обратите внимание, что если вы не хотите перебазировать ветвь функции, вы можете просто пропустить это, не переписывать feature_branch, и получить коммит слияния в master вместо rebased feature_branch иускоренное слияние.