diff --git a/make/topdir.mk b/make/topdir.mk index bdc0ed61..b8957248 100644 --- a/make/topdir.mk +++ b/make/topdir.mk @@ -272,8 +272,12 @@ git-get-maintainer: make git-get-$(call proj_query,getval global jw-maintainer) git-get-pub: - if git remote | grep -q "^pub$$"; then \ - JW_PKG_SSH_EXTRA_OPTS="" git pull pub master ;\ + set -e; if git remote | grep -q "^pub$$"; then \ + git fetch --prune --recurse-submodules=on-demand pub master ;\ + git submodule foreach --recursive 'git fetch --tags -f pub' ;\ + git rebase --autostash pub/master ;\ + git merge --ff-only pub/master ;\ + git submodule update --init --recursive ;\ fi git-get-%: FORCE