1*c75ce067SChris Kay#!/bin/bash 2*c75ce067SChris Kay 3*c75ce067SChris Kayfile="$1" 4*c75ce067SChris Kaytype="$2" 5*c75ce067SChris Kay 6*c75ce067SChris Kayif [ -z "$type" ]; then # only run on new commits 7*c75ce067SChris Kay # 8*c75ce067SChris Kay # Save any commit message trailers generated by Git. 9*c75ce067SChris Kay # 10*c75ce067SChris Kay 11*c75ce067SChris Kay trailers=$(git interpret-trailers --parse "$file") 12*c75ce067SChris Kay 13*c75ce067SChris Kay # 14*c75ce067SChris Kay # Execute the Commitizen hook. 15*c75ce067SChris Kay # 16*c75ce067SChris Kay 17*c75ce067SChris Kay (exec < "/dev/tty" && npx --no-install git-cz --hook) || true 18*c75ce067SChris Kay 19*c75ce067SChris Kay # 20*c75ce067SChris Kay # Restore any trailers that Commitizen might have overwritten. 21*c75ce067SChris Kay # 22*c75ce067SChris Kay 23*c75ce067SChris Kay printf "\n" >> "$file" 24*c75ce067SChris Kay 25*c75ce067SChris Kay while IFS= read -r trailer; do 26*c75ce067SChris Kay git interpret-trailers --in-place --trailer "$trailer" "$file" 27*c75ce067SChris Kay done <<< "$trailers" 28*c75ce067SChris Kayfi 29