Restructured in functions

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

View File

@@ -10,18 +10,41 @@ REPOUSER="\(structix\|Janek\)"
STARTDATE="01 Jan 2018" STARTDATE="01 Jan 2018"
# -------------------- # --------------------
# --- functions
# returns the amount of commits for one repository
function getCommits() {
# show amount of commits of all users
committemp=$(git rev-list --count --all --author=$REPOUSER --since="$STARTDATE")
echo $committemp
}
# get the amount of files, insertions, deletions by specifying parameters
function getDiffChanges() {
local __files=$1
local __insert=$2
local __delete=$3
# calculate total changes between given date and HEAD
local extractdiff=$(git diff @{"$STARTDATE"} HEAD --shortstat) 2>/dev/null
# set the separator to ,
local IFS=','
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 # Switch into the REPODIR
pushd $REPODIR pushd $REPODIR
# total commits
commitcounter=0
# total diff stats
totalfiles=0
totalinsertions=0
totaldeletions=0
# Iterate over all subdirectories # Iterate over all subdirectories
for dir in $REPODIR/*/ for dir in $REPODIR/*/
do do
@@ -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
# Switch back to the original directory state
popd
echo "-------------------------"
echo "Total commits since $STARTDATE: $commitcounter" echo "Total commits since $STARTDATE: $commitcounter"
echo "Total files changed: $totalfiles" echo "Total files changed: $totalfiles"
echo "Total insertions: $totalinsertions" echo "Total insertions: $totalinsertions"
echo "Total deletions: $totaldeletions" echo "Total deletions: $totaldeletions"
}
# Switch back to the original directory state main
popd