git branch -f dev master
, как предлагается в комментарии, будет работать только в том случае, если вы хотите, чтобы dev
находился в точно в том же коммите, что и мастер. Тогда просто запустите его сразу после git commit
.
Если на dev
есть что-то еще, что вы хотите сохранить, и вы действительно хотите перебазировать, используйте либо обычный bash псевдоним , либо git псевдоним:
$> git config alias.devattach '!git checkout dev && git rebase master && git push && git checkout master'
Выполнение git devattach
выполнит все это за вас, останавливаясь всякий раз, когда одна из команд в канале дает сбой.
EDIT Вы не хотели этого параметризовано, поэтому:
$> git config alias.attach '!git checkout $2 && git rebase $1 && git push && git checkout $1'
Теперь git attach master dev
делает то, что вы хотели.