Continued:
[jprojects-scripts.git] / commit-jprojects.sh
index 86810644ffa558d9fe0dfa3a9b1a079a717b3e75..88ec307def8d200c8b96462565b891da7635d86d 100755 (executable)
@@ -3,21 +3,44 @@
 . ./.jprojects.sh || exit 255
 
 for project in ${LIST}; do
-       if [ ! -d "${JPROJECTS_HOME}/${project}" ]
+       if [ "${project}" = "jprojects-scripts" ]
        then
+               echo "$0: Skipping jprojects-scripts ..."
+               continue
+       elif [ ! -d "${JPROJECTS_HOME}/${project}" ]
+       then
+               echo "$0: Project '${project}' does not exist."
                continue
        fi
 
        cd "${JPROJECTS_HOME}/${project}" || exit 255
-       CHECK_CHANGES=`git commit -a --dry-run | grep "Changes to be committed:"`
+       CHECK_CHANGES=$(git commit -a --dry-run | grep "Changes to be committed:")
 
        if [ -n "${CHECK_CHANGES}" ]
        then
                echo "$0: Committing '${project}' ..."
-               if [ -n "$1" ]
+               if [ "$1" = "updated jar(s)" ]
+               then
+                       # Special commit ... (known-binaries)
+                       git commit --signoff -S lib/*.jar -m "$1"
+               elif [ "$1" = "updated dist.sh" ]
+               then
+                       # Special commit ... (known shell script)
+                       git commit --signoff -S "dist.sh" -m "$1"
+               elif [ -n "$1" -a -n "$2" ]
+               then
+                       # Regular commit with given message
+                       git commit $2 --signoff -S -m "$1" || exit 255
+               elif [ -d "$1" -o -f "$1" ]
+               then
+                       # Limited commit with no message
+                       git commit $1 --signoff -S || exit 255
+               elif [ -n "$1" ]
                then
+                       # Regular commit with given message
                        git commit -a --signoff -S -m "$1" || exit 255
                else
+                       # Regular commit, will open $EDITOR for commit message
                        git commit -a --signoff -S || exit 255
                fi
        else