Skip to content

Instantly share code, notes, and snippets.

@ernscht
Forked from sindresorhus/post-merge
Last active April 17, 2016 18:16
Show Gist options
  • Select an option

  • Save ernscht/731f9ec710e5b3d01fa3 to your computer and use it in GitHub Desktop.

Select an option

Save ernscht/731f9ec710e5b3d01fa3 to your computer and use it in GitHub Desktop.

Revisions

  1. ernscht revised this gist Apr 17, 2016. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion post-merge
    Original file line number Diff line number Diff line change
    @@ -1,6 +1,6 @@
    #!/usr/bin/env bash
    # MIT © Sindre Sorhus - sindresorhus.com
    # forked by ernscht
    # forked by ernscht - https://gist.github.com/ernscht/731f9ec710e5b3d01fa3

    # 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/`.
  2. ernscht revised this gist Mar 22, 2016. No changes.
  3. ernscht revised this gist Mar 22, 2016. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion post-merge
    Original file line number Diff line number Diff line change
    @@ -1,4 +1,4 @@
    #/usr/bin/env bash
    #!/usr/bin/env bash
    # MIT © Sindre Sorhus - sindresorhus.com
    # forked by ernscht

  4. ernscht revised this gist Mar 22, 2016. 1 changed file with 7 additions and 5 deletions.
    12 changes: 7 additions & 5 deletions post-merge
    Original file line number Diff line number Diff line change
    @@ -1,16 +1,18 @@
    #/usr/bin/env bash
    # MIT © Sindre Sorhus - sindresorhus.com
    # forked by ernscht

    # 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)"

    check_run() {
    echo "$changed_files" | grep --quiet "$1" && eval "$2"
    echo "$changed_files" | grep -E --quiet "$1" && eval "$2"
    }

    # Example usage
    # In this example it's used to run `npm install` if package.json changed and `bower install` if `bower.json` changed.
    check_run package.json "npm install"
    check_run bower.json "bower install"
    # `npm install` and `npm prune` if `package.json` gets changed
    check_run package.json "npm install && npm prune"

    # `bower install` and `bower prune` if `bower.json` gets changed
    check_run bower.json "bower install && bower prune"
  5. @sindresorhus sindresorhus created this gist Dec 16, 2013.
    16 changes: 16 additions & 0 deletions post-merge
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,16 @@
    #/usr/bin/env bash
    # MIT © Sindre Sorhus - sindresorhus.com

    # 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)"

    check_run() {
    echo "$changed_files" | grep --quiet "$1" && eval "$2"
    }

    # Example usage
    # In this example it's used to run `npm install` if package.json changed and `bower install` if `bower.json` changed.
    check_run package.json "npm install"
    check_run bower.json "bower install"