X-Git-Url: https://git.mxchange.org/?p=jprojects-scripts.git;a=blobdiff_plain;f=push-stick.sh;h=1fcc7dcde7fe754bbb929e822a995a61aecff977;hp=04321b4af3a6968fc4e956c0c049f2fbf33c009a;hb=HEAD;hpb=8b141da0f636b4086e566dc2e03eeb17c6172a5e diff --git a/push-stick.sh b/push-stick.sh index 04321b4..3c02302 100755 --- a/push-stick.sh +++ b/push-stick.sh @@ -2,14 +2,15 @@ . ./.jprojects.sh || exit 255 -TARGETS="d t u" +TARGETS="o d t u" +FORCE="--force" if [ "$1" = "a" ] then cd "${JPROJECTS_HOME}" for TARGET in ${TARGETS}; do echo "$0: Pushing for target '${TARGET}' ..." - $0 "${TARGET}" "1" + $0 "${TARGET}" "$2" done echo "$0: Pushed to all targets." @@ -17,31 +18,64 @@ then fi for project in ${LIST}; do + if [ ! -d "${JPROJECTS_HOME}/${project}" ] + then + echo "$0: Project '${project}' does not exist." + continue; + fi + echo "$0: Processing '${project}',mode='$1' ..." cd "${JPROJECTS_HOME}/${project}" || exit 255 - SKIP_TEST="${project:0:9}" - - if [ -z "$2" -o "${SKIP_TEST}" = "jratecalc" ] + if [ "$1" = "d" ] then - echo "$0: Pushing '${project}',mode='$1' ..." - git push --all || exit 255 - fi + if [ -n "$2" ] + then + git push daedalus :"$2" + fi - if [ "${SKIP_TEST}" = "jratecalc" ] - then - echo "$0: Not continuing for jratecalc project '${project}'." - continue - elif [ "$1" = "d" ] - then - git push --all daedalus + git push ${FORCE} --all daedalus || exit 255 elif [ "$1" = "t" ] then - git push --all transport + if [ -n "$2" ] + then + git push transport :"$2" + echo "$0: Syncing ..." + sync + fi + + git push ${FORCE} --all transport || exit 255 + echo "$0: Syncing ..." + sync elif [ "$1" = "u" ] then - git push --all upstream - fi + if [ -n "$2" ] + then + git push upstream :"$2" + fi - cd "${JPROJECTS_HOME}" + git push ${FORCE} --all upstream || exit 255 + elif [ "$1" = "o" ] + then + if [ -n "$2" ] + then + git push origin :"$2" + fi + + git push ${FORCE} --all origin || exit 255 + else + if [ -n "$2" ] + then + git push origin :"$2" + echo "$0: Syncing ..." + sync + fi + + git push ${FORCE} --all + echo "$0: Syncing ..." + sync + fi done + +echo "$0: All done." +exit 0