summaryrefslogtreecommitdiff
path: root/tools
diff options
context:
space:
mode:
Diffstat (limited to 'tools')
-rwxr-xr-xtools/changelog.sh5
-rw-r--r--tools/check_for_upgrade.sh11
-rwxr-xr-xtools/upgrade.sh2
3 files changed, 13 insertions, 5 deletions
diff --git a/tools/changelog.sh b/tools/changelog.sh
index 836afef14..56ea42cb1 100755
--- a/tools/changelog.sh
+++ b/tools/changelog.sh
@@ -114,6 +114,11 @@ function parse-commit {
fi
}
+ # Ignore commit if it is a merge commit
+ if [[ $(command git show -s --format=%p $1 | wc -w) -gt 1 ]]; then
+ return
+ fi
+
# Parse commit with hash $1
local hash="$1" subject body warning rhash
subject="$(command git show -s --format=%s $hash)"
diff --git a/tools/check_for_upgrade.sh b/tools/check_for_upgrade.sh
index 29a48b880..e87da3487 100644
--- a/tools/check_for_upgrade.sh
+++ b/tools/check_for_upgrade.sh
@@ -48,14 +48,17 @@ function update_ohmyzsh() {
return
fi
- # Remove lock directory on exit. `return 1` is important for when trapping a SIGINT:
+ # Remove lock directory on exit. `return $ret` is important for when trapping a SIGINT:
# The return status from the function is handled specially. If it is zero, the signal is
# assumed to have been handled, and execution continues normally. Otherwise, the shell
# will behave as interrupted except that the return status of the trap is retained.
+ # This means that for a CTRL+C, the trap needs to return the same exit status so that
+ # the shell actually exits what it's running.
trap "
- unset -f current_epoch update_last_updated_file update_ohmyzsh
- command rm -rf '$ZSH/log/update.lock'
- return 1
+ ret=\$?
+ unset -f current_epoch update_last_updated_file update_ohmyzsh 2>/dev/null
+ command rm -rf '$ZSH/log/update.lock'
+ return \$ret
" EXIT INT QUIT
# Create or update .zsh-update file if missing or malformed
diff --git a/tools/upgrade.sh b/tools/upgrade.sh
index 417e06fe8..38fac3ce0 100755
--- a/tools/upgrade.sh
+++ b/tools/upgrade.sh
@@ -72,7 +72,7 @@ if git pull --rebase --stat origin master; then
# Save the commit prior to updating
git config oh-my-zsh.lastVersion "$last_commit"
- # Display changelog with less if available, otherwise just print it to the terminal
+ # Print changelog to the terminal
if [[ "$1" = --interactive ]]; then
"$ZSH/tools/changelog.sh" HEAD "$last_commit"
fi