Skip to content

Instantly share code, notes, and snippets.

@paulolorenzobasilio
Last active August 19, 2019 23:33
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save paulolorenzobasilio/933562a8fc200b60fa2ebb295acfe6a9 to your computer and use it in GitHub Desktop.
Save paulolorenzobasilio/933562a8fc200b60fa2ebb295acfe6a9 to your computer and use it in GitHub Desktop.
Check changed files on post-merge and execute command
#!/usr/bin/env bash
# git hook to run a command after `git pull` if a specified file was changed
# Run `chmod +x post-merge` to make it executable then put it into `.git/hooks/`.
changed_files="$(git diff-tree -r --name-only --no-commit-id ORIG_HEAD HEAD)"
changed() {
echo "$changed_files" | grep --quiet "$1" && eval "$2"
}
if changed 'package.lock'; then
echo "[package.lock] changed: Installing npm dependencies..."
if [ "$(whoami)" == "gitlab" ];
then
echo "executing npm ci..."
npm ci
else
echo "executing npm install..."
npm install
fi
fi
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment