From a12c0bab0b84700ee6fdbe59cfe62a69bb04cb31 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Florian=20Mei=C3=9Fner?= <florian.meissner@mailbox.org> Date: Mon, 5 Apr 2021 02:04:13 +0200 Subject: [PATCH] Added helper script for watchman Added test script which shows behaviour of bash parameters --- helpers/test.sh | 7 ++++++ .../watchman_git_commit_generate_message.sh | 23 +++++++++++++++++++ 2 files changed, 30 insertions(+) create mode 100755 helpers/test.sh create mode 100755 helpers/watchman_git_commit_generate_message.sh diff --git a/helpers/test.sh b/helpers/test.sh new file mode 100755 index 0000000..f10b1ff --- /dev/null +++ b/helpers/test.sh @@ -0,0 +1,7 @@ +#!/bin/bash + +echo '$1:'$1 +echo '$2:'$2 +echo '$3:'$3 +echo '$@:'$@ +echo '"$@":'"$@" diff --git a/helpers/watchman_git_commit_generate_message.sh b/helpers/watchman_git_commit_generate_message.sh new file mode 100755 index 0000000..5c89427 --- /dev/null +++ b/helpers/watchman_git_commit_generate_message.sh @@ -0,0 +1,23 @@ +#!/bin/bash + +# this generates a nicely formatted commit message for auto-commit +# put changed files as params + +commit_msg=$'auto-commit\n\nchanges in:\n' + +# if no arguments are given, insert placeholder +if [[ $# -eq 0 ]]; then commit_msg=$commit_msg$'\t-- no changes detected --'; +else + # loop over arguments (by shifting to the left) + while [[ $# -ne 0 ]] ; do + # $'' for c-style escape sequences + commit_msg+=$'\t- '$1$'\n' + shift + done +fi + +# add everything to git +git add -A + +# commit with message from stdin to preserve format +git commit -F - <<< "$commit_msg" -- GitLab