尝试这些更改。我相信这段代码可以优化:)
loc_changed() {
since=${1:-24 hours}
author=${2:-your_email@gmail.com}
stagedPlus=$(git log --numstat --pretty="%H" --author="$author" --since="$since" | awk 'NF==3 {plus+=$1} END {print plus}')
unstagedPlus=$(git diff $(git log -1 --pretty="%H" | tail -1) --numstat | awk 'NF==3 {plus+=$1} END {print plus}')
stagedMinus=$(git log --numstat --pretty="%H" --author="$author" --since="$since" | awk 'NF==3 {minus+=$2} END {print minus}')
unstagedMinus=$(git diff $(git log -1 --pretty="%H" | tail -1) --numstat | awk 'NF==3 {minus+=$2} END {print minus}')
if [[ -z $unstagedPlus ]]; then
unstagedPlus=0
fi
if [[ -z $unstagedMinus ]]; then
unstagedMinus=0
fi
print "+$(($stagedPlus+$unstagedPlus)), -$(($stagedMinus+$unstagedMinus))"
}
diff
numstat
)从上次提交到当前未老化代码。