X-Git-Url: https://git.mxchange.org/?p=jprojects-scripts.git;a=blobdiff_plain;f=pull-stick.sh;h=b417ff1faad3ede91744e4b35e9bb978612cebd1;hp=bca96943000365aec93aa476fb188e2b134ebbba;hb=dcb3f1861ead93598bb7e1a030d30410b2f8b71f;hpb=2674d9b3266d9849a69284f43d3f8bbd1c3154c9 diff --git a/pull-stick.sh b/pull-stick.sh index bca9694..b417ff1 100755 --- a/pull-stick.sh +++ b/pull-stick.sh @@ -6,19 +6,46 @@ for project in ${LIST}; do if [ ! -d "${JPROJECTS_HOME}/${project}" ] then echo "$0: Project '${project}' does not exist." - continue; + continue fi cd "${JPROJECTS_HOME}/${project}" || exit 255 + if [ -n "$2" ] + then + git branch -D "$2" + fi + if [ "$1" = "c" ] then echo "$0: Checkout '${project}' ..." git checkout -- . + elif [ "$1" = "r" ] + then + echo "$0: Resetting '${project}' ..." + git reset --hard fi echo "$0: Pulling '${project}' ..." - git pull transport master || exit 255 - echo "$0: Rebasing '${project}' ..." - git rebase origin/master || exit 255 + + git pull -S origin master + git pull -S upstream master + git pull -S transport master + + if [ "$?" != "0" ] + then + git pull --all + fi + + echo "$0: Merging upstream into '${project}' ..." + git merge -S upstream/master + + if [ "$1" != "s" ] + then + echo "$0: Rebasing '${project}' ..." + git rebase -Sm origin/master || exit 255 + fi done + +echo "$0: All done." +exit 0