Git represents history as a directed-acyclic-graph (DAG) of commits, where each commit has at least one parent commit (the exception to this are root commits).