diff options
Diffstat (limited to 'pre-commit.d')
-rwxr-xr-x | pre-commit.d/10store-empty-directory | 19 | ||||
-rwxr-xr-x | pre-commit.d/10warn-empty-directory | 6 | ||||
-rwxr-xr-x | pre-commit.d/20store-metadata (renamed from pre-commit.d/10store-metadata) | 0 |
3 files changed, 19 insertions, 6 deletions
diff --git a/pre-commit.d/10store-empty-directory b/pre-commit.d/10store-empty-directory new file mode 100755 index 0000000..bc698e2 --- /dev/null +++ b/pre-commit.d/10store-empty-directory @@ -0,0 +1,19 @@ +#!/bin/sh +set -ex + +# Make sure the file is not readable by others, since it can leak +# information about contents of non-readable directories in /etc. +umask 077 + +if [ -e .etckeeper ]; then + egrep -v '^mkdir ' .etckeeper > .etckeeper.new || true +fi +find -type d -empty | grep -v /.git/ | sort | + sed -e "s/^/mkdir -p '/" -e "s/\$/'/" >> .etckeeper.new + +if [ ! -e .etckeeper ] || ! cmp -s .etckeeper .etckeeper.new ; then + mv -f .etckeeper.new .etckeeper + git add .etckeeper +else + rm -f .etckeeper.new +fi diff --git a/pre-commit.d/10warn-empty-directory b/pre-commit.d/10warn-empty-directory deleted file mode 100755 index b850c86..0000000 --- a/pre-commit.d/10warn-empty-directory +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/sh -set -e -empty=$(find -type d -empty | grep -v /.git/) || true -if [ -n "$empty" ]; then - echo "etckeeper warning: there are some empty directories, which git will ignore" >&2 -fi diff --git a/pre-commit.d/10store-metadata b/pre-commit.d/20store-metadata index b878abd..b878abd 100755 --- a/pre-commit.d/10store-metadata +++ b/pre-commit.d/20store-metadata |