Browse Source

format-check: Optimize format-check.sh

This commit silences the standard output of wget to generate less noise
when using `format-check.sh` as a pre-commit hook.

It also doesn't redownload the file over and over again but only when
changes were detected. Previous behavior was wget creating numbered
versions by multiple downloads, thus it always used the first version
which was download. That is obviously wrong.

It errors out nicely now when the download failed.

Signed-off-by: Kai Krakow <kai@kaishome.de>
Kai Krakow 6 năm trước cách đây
mục cha
commit
f041ba2281
1 tập tin đã thay đổi với 13 bổ sung9 xóa
  1. 13 9
      scripts/format-check.sh

+ 13 - 9
scripts/format-check.sh

@@ -1,14 +1,18 @@
 #!/bin/bash
 # Simple script to check for clang-format compliance
-wget https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/git-clang-format
-chmod +x git-clang-format
 
-CLANG_FORMAT_OUTPUT=$(./git-clang-format HEAD^ HEAD --diff)
-if [[ ! ${CLANG_FORMAT_OUTPUT} == "no modified files to format" ]] && [[ ! -z ${CLANG_FORMAT_OUTPUT} ]]; then
-  echo "Failed clang format check:"
-  echo "${CLANG_FORMAT_OUTPUT}"
-  exit 1
+wget -Nq https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/git-clang-format
+
+if chmod +x git-clang-format; then
+  CLANG_FORMAT_OUTPUT=$(./git-clang-format HEAD^ HEAD --diff)
+  if [[ ! ${CLANG_FORMAT_OUTPUT} == "no modified files to format" ]] && [[ ! -z ${CLANG_FORMAT_OUTPUT} ]]; then
+    echo "Failed clang format check:"
+    echo "${CLANG_FORMAT_OUTPUT}"
+    exit 1
+  else
+    echo "Passed clang format check"
+  fi
 else
-  echo "Passed clang format check"
+  echo "git-clang-format not downloaded"
+  exit 1
 fi
-