for name in git-clang-format-3.9 git-clang-format-3.8 git-clang-format ; do
where=$(which $name)
if [ x != "x$where" ] ; then
- GIT_SUBCOMMAND=`echo $name|sed 's/git-//'`
+ GIT_SUBCOMMAND=$(echo $name|sed 's/git-//')
break
fi
done
fi
# remove any older patches from previous commits. Set to true or false.
-DELETE_OLD_PATCHES=false
+DELETE_OLD_PATCHES=true
# only parse files with the extensions in FILE_EXTS. Set to true or false.
# if false every changed file in the commit will be parsed with clang-format.
local result=""
# Need to restore the working directory after work.
- pushd `pwd` > /dev/null
+ pushd $(pwd) > /dev/null
cd "$(dirname "$target_file")"
- target_file=`basename $target_file`
+ target_file=$(basename $target_file)
# Iterate down a (possible) chain of symlinks
while [ -L "$target_file" ]
# Compute the canonicalized name by finding the physical path
# for the directory we're in and appending the target file.
- physical_directory=`pwd -P`
+ physical_directory=$(pwd -P)
result="$physical_directory"/"$target_file"
# restore the working directory after work.
# +++ - timestamp
# to both lines working on the same file and having a a/ and b/ prefix.
# Else it can not be applied with 'git apply'.
- git ${GIT_SUBCOMMAND} --binary ${CLANG_FORMAT} --diff -q >> "$patch"
+ git ${GIT_SUBCOMMAND} --binary ${CLANG_FORMAT} --diff -q "$file" \
+ | (grep -v "no modified files to format"||true) \
+ >> "$patch"
#"$CLANG_FORMAT" -style=file "$file" | \
#diff -u "$file" - | \
#sed -e "1s|--- |--- a/|" -e "2s|+++ -|+++ b/$file|" >> "$patch"