From 0f97f15a8d183c6b14894f47c40968e92104181d Mon Sep 17 00:00:00 2001 From: Mohammad Akhlaghi Date: Wed, 23 Jan 2019 18:41:55 +0000 Subject: Removing files ending with a ~ in the git checkout hook While editing files, some editors create temporary `~' files that can cause problems in metastore's ability to delete their host directory if its not on the other branch. With this commit, a `find' call was added to the post checkout Git hook to remove such temporary files before metastore is called. Also, some comments were added to both git hooks to make them easier to understand for a beginner. --- reproduce/src/bash/git-pre-commit | 6 ++++++ 1 file changed, 6 insertions(+) (limited to 'reproduce/src/bash/git-pre-commit') diff --git a/reproduce/src/bash/git-pre-commit b/reproduce/src/bash/git-pre-commit index dbf7dc6..ca28757 100644 --- a/reproduce/src/bash/git-pre-commit +++ b/reproduce/src/bash/git-pre-commit @@ -20,8 +20,10 @@ # git reset HEAD -- .metadata # git checkout HEAD -- .metadata +# File containig the metadata. MSFILE=".file-metadata" +# Function to help in reporting a crash. exit_on_fail() { "$@" if [ $? -ne 0 ]; then @@ -30,6 +32,7 @@ exit_on_fail() { fi } +# Run metastore. exit_on_fail \ @BINDIR@/metastore -O @USER@ -G @GROUP@ -s -f "$MSFILE" @@ -39,12 +42,15 @@ if ! git-ls-tree --name-only HEAD 2>/dev/null | grep -Fqx "$MSFILE"; then @BINDIR@/metastore -O @USER@ -G @GROUP@ -s -f "$MSFILE" fi +# Check if the metadata file exists. if [ ! -e "$MSFILE" ]; then echo "\"$MSFILE\" missing" >&2 exit 1 fi +# Add the metadata file to the Git repository. exit_on_fail \ git-add "$MSFILE" +# Return with a success code (0). exit 0 -- cgit v1.2.1