X-Git-Url: https://git.mxchange.org/?p=jprojects-scripts.git;a=blobdiff_plain;f=push-stick.sh;h=02f28847856183ae55f04be937689d4e7a4b5ec7;hp=4a8ca0961d85ff2e84b0582e802edef09a68ebf3;hb=dcb3f1861ead93598bb7e1a030d30410b2f8b71f;hpb=1b1fe47beeb6cf5eb4b58be59058d521fae899ee diff --git a/push-stick.sh b/push-stick.sh index 4a8ca09..02f2884 100755 --- a/push-stick.sh +++ b/push-stick.sh @@ -2,38 +2,72 @@ . ./.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." exit 0 fi -for ENTRY in ${LIST}; do - echo "$0: Pushing '${ENTRY}' ..." - cd "${JPROJECTS_HOME}/${ENTRY}" || exit 255 - - if [ -z "$2" ] +for project in ${LIST}; do + if [ ! -d "${JPROJECTS_HOME}/${project}" ] then - git push --all + echo "$0: Project '${project}' does not exist." + continue; fi + echo "$0: Processing '${project}',mode='$1' ..." + cd "${JPROJECTS_HOME}/${project}" || exit 255 + if [ "$1" = "d" ] then - git push --all daedalus + if [ -n "$2" ] + then + git push daedalus :"$2" + fi + + 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 + if [ -n "$2" ] + then + git push upstream :"$2" + fi + + git push ${FORCE} --all upstream || exit 255 + else + if [ -n "$2" ] + then + git push origin :"$2" + echo "$0: Syncing ..." + sync + fi + + git push ${FORCE} --all || exit 255 + echo "$0: Syncing ..." + sync fi - cd "${JPROJECTS_HOME}" done + +echo "$0: All done." +exit 0