I just did a simple git reflog
and this is the first few lines I got:
column1 Column2 Column3
2797a1d4 (HEAD -> master, upstream/master) HEAD@{0}: checkout: moving from master to master
2797a1d4 (HEAD -> master, upstream/master) HEAD@{1}: pull upstream master: Fast-forward
a461a29f HEAD@{2}: checkout: moving from master to master
a461a29f HEAD@{3}: reset: moving to HEAD
a461a29f HEAD@{4}: pull upstream master: Fast-forward
784f2cp3 (yy, alphabets, hotFix) HEAD@{5}: checkout: moving from yy to master
784f2cp3 (yy, alphabets, hotFix) HEAD@{6}: checkout: moving from master to yy
784f2cp3 (yy, alphabets, hotFix) HEAD@{7}: checkout: moving from alphabets to master
I'm trying to understand what each column represents. Reading from this post and this question I've already learned:
- Column1 is obviously the commit,
- Column2 is where I get confused. I understand the
HEAD@{0}
toHEAD@{7}
concept. Don't get the parts that are in the parenthesis!. What does(yy, alphabets, hotFix)
represent? - Column3 is the action i.e. checkout/pull along with a message.
Additionally I'm uncertain as to why there is multiple lines of the same commit? Is it because different branches are all pointing to the same commit and there is no code changes between them?