|
1 | | -#!/bin/bash |
2 | | - |
3 | | -# Copyright (c) 2017-2018 Martin Donath <martin.donath@squidfunk.com> |
4 | | - |
5 | | -# Permission is hereby granted, free of charge, to any person obtaining a copy |
6 | | -# of this software and associated documentation files (the "Software"), to |
7 | | -# deal in the Software without restriction, including without limitation the |
8 | | -# rights to use, copy, modify, merge, publish, distribute, sublicense, and/or |
9 | | -# sell copies of the Software, and to permit persons to whom the Software is |
10 | | -# furnished to do so, subject to the following conditions: |
11 | | - |
12 | | -# The above copyright notice and this permission notice shall be included in |
13 | | -# all copies or substantial portions of the Software. |
14 | | - |
15 | | -# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
16 | | -# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
17 | | -# FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE |
18 | | -# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
19 | | -# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
20 | | -# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS |
21 | | -# IN THE SOFTWARE. |
22 | | - |
23 | | -# ----------------------------------------------------------------------------- |
24 | | -# Constants |
25 | | -# ----------------------------------------------------------------------------- |
26 | | - |
27 | | -# Patch file to store working tree |
28 | | -PATCH=".working-tree.patch" |
29 | | - |
30 | | -# ----------------------------------------------------------------------------- |
31 | | -# Functions |
32 | | -# ----------------------------------------------------------------------------- |
33 | | - |
34 | | -# Re-create working tree from patch file and preserve exit code |
35 | | -function cleanup { |
36 | | - EXIT_CODE=$? |
37 | | - if [ -f "${PATCH}" ]; then |
38 | | - git apply "${PATCH}" 2> /dev/null |
39 | | - rm "${PATCH}" |
40 | | - fi |
41 | | - exit $EXIT_CODE |
42 | | -} |
43 | | - |
44 | | -# ----------------------------------------------------------------------------- |
45 | | -# Handlers |
46 | | -# ----------------------------------------------------------------------------- |
47 | | - |
48 | | -# Register signal handlers |
49 | | -trap cleanup EXIT SIGINT SIGHUP |
50 | | - |
51 | | -# ----------------------------------------------------------------------------- |
52 | | -# Program |
53 | | -# ----------------------------------------------------------------------------- |
54 | | - |
55 | | -# Remove any changes from the working tree that are not going to be committed |
56 | | -git diff > "${PATCH}" |
57 | | -git checkout -- . |
58 | | - |
59 | | -# Filter staged files and create short list for files to lint |
60 | | -FILES=$(git diff --cached --name-only --diff-filter=ACMR | grep "\.js$") |
61 | | - |
62 | | -# Run linter if the commit contains files that require it |
63 | | -if [ "$FILES" ]; then |
64 | | - make lint |
65 | | -fi |
| 1 | +# #!/bin/bash |
| 2 | +# |
| 3 | +# # Copyright (c) 2017-2018 Martin Donath <martin.donath@squidfunk.com> |
| 4 | +# |
| 5 | +# # Permission is hereby granted, free of charge, to any person obtaining a copy |
| 6 | +# # of this software and associated documentation files (the "Software"), to |
| 7 | +# # deal in the Software without restriction, including without limitation the |
| 8 | +# # rights to use, copy, modify, merge, publish, distribute, sublicense, and/or |
| 9 | +# # sell copies of the Software, and to permit persons to whom the Software is |
| 10 | +# # furnished to do so, subject to the following conditions: |
| 11 | +# |
| 12 | +# # The above copyright notice and this permission notice shall be included in |
| 13 | +# # all copies or substantial portions of the Software. |
| 14 | +# |
| 15 | +# # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| 16 | +# # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| 17 | +# # FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT. IN NO EVENT SHALL THE |
| 18 | +# # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER |
| 19 | +# # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING |
| 20 | +# # FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS |
| 21 | +# # IN THE SOFTWARE. |
| 22 | +# |
| 23 | +# # ----------------------------------------------------------------------------- |
| 24 | +# # Constants |
| 25 | +# # ----------------------------------------------------------------------------- |
| 26 | +# |
| 27 | +# # Patch file to store working tree |
| 28 | +# PATCH=".working-tree.patch" |
| 29 | +# |
| 30 | +# # ----------------------------------------------------------------------------- |
| 31 | +# # Functions |
| 32 | +# # ----------------------------------------------------------------------------- |
| 33 | +# |
| 34 | +# # Re-create working tree from patch file and preserve exit code |
| 35 | +# function cleanup { |
| 36 | +# EXIT_CODE=$? |
| 37 | +# if [ -f "${PATCH}" ]; then |
| 38 | +# git apply "${PATCH}" 2> /dev/null |
| 39 | +# rm "${PATCH}" |
| 40 | +# fi |
| 41 | +# exit $EXIT_CODE |
| 42 | +# } |
| 43 | +# |
| 44 | +# # ----------------------------------------------------------------------------- |
| 45 | +# # Handlers |
| 46 | +# # ----------------------------------------------------------------------------- |
| 47 | +# |
| 48 | +# # Register signal handlers |
| 49 | +# trap cleanup EXIT SIGINT SIGHUP |
| 50 | +# |
| 51 | +# # ----------------------------------------------------------------------------- |
| 52 | +# # Program |
| 53 | +# # ----------------------------------------------------------------------------- |
| 54 | +# |
| 55 | +# # Remove any changes from the working tree that are not going to be committed |
| 56 | +# git diff > "${PATCH}" |
| 57 | +# git checkout -- . |
| 58 | +# |
| 59 | +# # Filter staged files and create short list for files to lint |
| 60 | +# FILES=$(git diff --cached --name-only --diff-filter=ACMR | grep "\.ts$") |
| 61 | +# |
| 62 | +# # Run linter if the commit contains files that require it |
| 63 | +# if [ "$FILES" ]; then |
| 64 | +# make lint |
| 65 | +# fi |
0 commit comments