How to read git log graph

GitGit BranchGit Log

Git Problem Overview


In the git community book, it says

> Another interesting thing you can do is visualize the commit graph with the '--graph' option, like so: > $ git log --pretty=format:'%h : %s' --graph * 2d3acf9 : ignore errors from SIGCHLD on trap * 5e3ee11 : Merge branch 'master' of git://github.com/dustin/grit |
| * 420eac9 : Added a method for getting the current branch. * | 30e367c : timeout code and tests * | 5a09431 : add timeout protection to grit * | e1193f8 : support for heads with slashes in them |/ * d6016bc : require time for xmlschema

> It will give a pretty nice ASCII representation of the commit history lines.

How should I read this graph? How does 420eac9 differ from the rest?

Git Solutions


Solution 1 - Git

The asterisks show where something was committed:

e1193f8, 5a09431 and 30e367c were committed to the left branch (yielding a | on the right branch) whereas 420eac9 was committed to the right branch (yielding a | on the left branch). And that is how 420eac9 differs from the rest: it's the only commit to the right branch.

For the sake of completeness:

  • d6016bc was the branching point
  • 5e3ee11 is the merging commit
  • 2d3acf9 is the first commit after merging

Solution 2 - Git

420eac9 is on a different branch than the 3 commits "below" it. The branches diverged after d6016bc and they were merged in 5e3ee11.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionmichaelView Question on Stackoverflow
Solution 1 - GiteckesView Answer on Stackoverflow
Solution 2 - GitIlkkaView Answer on Stackoverflow