Restructured in functions

This commit is contained in:
2019-01-05 01:51:12 +01:00
parent 56dfc937b4
commit 89306e57f6

View File

@@ -10,21 +10,44 @@ REPOUSER="\(structix\|Janek\)"
STARTDATE="01 Jan 2018" STARTDATE="01 Jan 2018"
# -------------------- # --------------------
# --- functions
# Switch into the REPODIR # returns the amount of commits for one repository
pushd $REPODIR function getCommits() {
# show amount of commits of all users
committemp=$(git rev-list --count --all --author=$REPOUSER --since="$STARTDATE")
echo $committemp
}
# total commits # get the amount of files, insertions, deletions by specifying parameters
commitcounter=0 function getDiffChanges() {
local __files=$1
local __insert=$2
local __delete=$3
# total diff stats # calculate total changes between given date and HEAD
totalfiles=0 local extractdiff=$(git diff @{"$STARTDATE"} HEAD --shortstat) 2>/dev/null
totalinsertions=0
totaldeletions=0
# Iterate over all subdirectories # set the separator to ,
for dir in $REPODIR/*/ local IFS=','
do local array=( $extractdiff )
local f=$(( ${array[0]//[!0-9]} + __files))
local i=$(( ${array[1]//[!0-9]} + __insert))
local d=$(( ${array[2]//[!0-9]} + __delete))
eval $__files="'$f'"
eval $__insert="'$i'"
eval $__delete="'$d'"
}
function main() {
# Switch into the REPODIR
pushd $REPODIR
# Iterate over all subdirectories
for dir in $REPODIR/*/
do
dir=${dir%*/} dir=${dir%*/}
echo ${dir##*/} echo ${dir##*/}
@@ -33,36 +56,27 @@ do
# --- RUN COMMANDS # --- RUN COMMANDS
# show amount of commits of all users commtemp=$(getCommits)
committemp=$(git rev-list --count --all --author=$REPOUSER --since="$STARTDATE")
# Add to the total commit counter # Add to the total commit counter
commitcounter=$((commitcounter + committemp)) commitcounter=$((commitcounter + commtemp))
# calculate total changes between given date and HEAD
extractdiff=$(git diff @{"$STARTDATE"} HEAD --shortstat) 2>/dev/null
# set the separator to ,
IFS=','
array=( $extractdiff )
totalfiles=$(( ${array[0]//[!0-9]} + totalfiles))
totalinsertions=$(( ${array[1]//[!0-9]} + totalinsertions))
totaldeletions=$(( ${array[2]//[!0-9]} + totaldeletions))
# ------------------
# Output the commit counter of the current iteration # Output the commit counter of the current iteration
echo $committemp echo $commtemp
getDiffChanges totalfiles totalinsertions totaldeletions
# go back # go back
cd .. cd ..
done done
echo "Total commits since $STARTDATE: $commitcounter" # Switch back to the original directory state
echo "Total files changed: $totalfiles" popd
echo "Total insertions: $totalinsertions"
echo "Total deletions: $totaldeletions"
# Switch back to the original directory state
popd echo "-------------------------"
echo "Total commits since $STARTDATE: $commitcounter"
echo "Total files changed: $totalfiles"
echo "Total insertions: $totalinsertions"
echo "Total deletions: $totaldeletions"
}
main