recursive git status function