diff --git a/bin/_pre-git-helpers b/bin/_pre-git-helpers new file mode 100755 index 0000000..e065fe8 --- /dev/null +++ b/bin/_pre-git-helpers @@ -0,0 +1,18 @@ +#!/usr/bin/env sh + +# cross-platform `readlink -f` +# borrow from http://stackoverflow.com/questions/1055671/how-can-i-get-the-behavior-of-gnus-readlink-f-on-a-mac +_readlink_f() { + TARGET_FILE=$1 + cd `dirname $TARGET_FILE` + TARGET_FILE=`basename $TARGET_FILE` + + while [ -L "$TARGET_FILE" ] + do + TARGET_FILE=`readlink $TARGET_FILE` + cd `dirname $TARGET_FILE` + TARGET_FILE=`basename $TARGET_FILE` + done + + echo `pwd -P`/$TARGET_FILE +} diff --git a/bin/commit-msg b/bin/commit-msg new file mode 100755 index 0000000..8fbe7f4 --- /dev/null +++ b/bin/commit-msg @@ -0,0 +1,4 @@ +#!/usr/bin/env sh + +. "$(dirname "$0")/_pre-git-helpers" +exec /usr/bin/env node --harmony "$(_readlink_f $0).js" "$@" diff --git a/bin/commit-wizard b/bin/commit-wizard new file mode 100755 index 0000000..6f3e586 --- /dev/null +++ b/bin/commit-wizard @@ -0,0 +1,4 @@ +#!/usr/bin/env sh + +. "$(dirname "$0")/_pre-git-helpers" +exec /usr/bin/env node --harmony "$(_readlink_f "$0").js" "$@" diff --git a/bin/post-commit b/bin/post-commit new file mode 100755 index 0000000..8fbe7f4 --- /dev/null +++ b/bin/post-commit @@ -0,0 +1,4 @@ +#!/usr/bin/env sh + +. "$(dirname "$0")/_pre-git-helpers" +exec /usr/bin/env node --harmony "$(_readlink_f $0).js" "$@" diff --git a/bin/post-merge b/bin/post-merge new file mode 100755 index 0000000..8fbe7f4 --- /dev/null +++ b/bin/post-merge @@ -0,0 +1,4 @@ +#!/usr/bin/env sh + +. "$(dirname "$0")/_pre-git-helpers" +exec /usr/bin/env node --harmony "$(_readlink_f $0).js" "$@" diff --git a/bin/pre-commit b/bin/pre-commit new file mode 100755 index 0000000..8fbe7f4 --- /dev/null +++ b/bin/pre-commit @@ -0,0 +1,4 @@ +#!/usr/bin/env sh + +. "$(dirname "$0")/_pre-git-helpers" +exec /usr/bin/env node --harmony "$(_readlink_f $0).js" "$@" diff --git a/bin/pre-push b/bin/pre-push new file mode 100755 index 0000000..8fbe7f4 --- /dev/null +++ b/bin/pre-push @@ -0,0 +1,4 @@ +#!/usr/bin/env sh + +. "$(dirname "$0")/_pre-git-helpers" +exec /usr/bin/env node --harmony "$(_readlink_f $0).js" "$@" diff --git a/hooks/commit-msg b/hooks/commit-msg index 848b388..affd37c 100755 --- a/hooks/commit-msg +++ b/hooks/commit-msg @@ -1,3 +1,3 @@ #!/bin/sh -/usr/bin/env node --harmony ./node_modules/.bin/commit-msg "$@" +./node_modules/.bin/commit-msg "$@" diff --git a/hooks/post-commit b/hooks/post-commit index f61947d..c951753 100755 --- a/hooks/post-commit +++ b/hooks/post-commit @@ -1,3 +1,3 @@ #!/bin/sh -/usr/bin/env node --harmony ./node_modules/.bin/post-commit "$@" +./node_modules/.bin/post-commit "$@" diff --git a/hooks/post-merge b/hooks/post-merge index a2f41df..2afd864 100755 --- a/hooks/post-merge +++ b/hooks/post-merge @@ -1,3 +1,3 @@ #!/bin/sh -/usr/bin/env node --harmony ./node_modules/.bin/post-merge "$@" +./node_modules/.bin/post-merge "$@" diff --git a/hooks/pre-commit b/hooks/pre-commit index fd01a98..6880e78 100755 --- a/hooks/pre-commit +++ b/hooks/pre-commit @@ -1,3 +1,3 @@ #!/bin/sh -/usr/bin/env node --harmony ./node_modules/.bin/pre-commit "$@" +./node_modules/.bin/pre-commit "$@" diff --git a/hooks/pre-push b/hooks/pre-push index 992d0af..3d33e36 100755 --- a/hooks/pre-push +++ b/hooks/pre-push @@ -1,3 +1,3 @@ #!/bin/sh -/usr/bin/env node --harmony ./node_modules/.bin/pre-push "$@" +./node_modules/.bin/pre-push "$@" diff --git a/package.json b/package.json index 9af710c..4996534 100644 --- a/package.json +++ b/package.json @@ -4,12 +4,13 @@ "version": "0.0.0-semantic-release", "author": "Arnout Kazemier ", "bin": { - "commit-msg": "bin/commit-msg.js", - "commit-wizard": "bin/commit-wizard.js", - "post-commit": "bin/post-commit.js", - "post-merge": "bin/post-merge.js", - "pre-commit": "bin/pre-commit.js", - "pre-push": "bin/pre-push.js" + "_pre-git-helpers": "bin/_pre-git-helpers", + "commit-msg": "bin/commit-msg", + "commit-wizard": "bin/commit-wizard", + "post-commit": "bin/post-commit", + "post-merge": "bin/post-merge", + "pre-commit": "bin/pre-commit", + "pre-push": "bin/pre-push" }, "bugs": { "url": "https://github.com/bahmutov/pre-git/issues"