git – Datamodel for tracking a development project

Is there a datamodel or standard approach to track code changes, my specific need is for BI which has tables and widgets etc, but I think the idea would also work for most languages where we’d be counting classes, methods, etc. My specific use case is tracking customers activity building BI dashboards by tracking their changes via Git. I have my own code that reads git and turns it into meaningful metrics like, table count, widget count etc.