What does the long empty space in git reflog signi

2019-09-16 09:48发布

问题:

This question already has an answer here:

  • git log shows skipped lines on my bash 1 answer

After reading here as far as I have learned git reflog will show a list of all heads, basically it will keep a history after every checkout you do. Right?

What I don't understand is why are there long empty spaces between the list of heads? Also between lines I see :...skipping... What is that?

See the output of my git reflog

git reflog
7136d2c HEAD@{0}: checkout: moving from master to master
7136d2c HEAD@{1}: checkout: moving from xhh994 to master
7136d2c HEAD@{2}: merge master: Fast-forward
f50e2ef HEAD@{3}: checkout: moving from master to xhh994
7136d2c HEAD@{4}: pull upstream master: Fast-forward
f50e2ef HEAD@{5}: checkout: moving from xhh994 to master
f50e2ef HEAD@{6}: checkout: moving from master to xhh994
f50e2ef HEAD@{7}: checkout: moving from hh994 to master
f50e2ef HEAD@{8}: checkout: moving from master to hh994
f50e2ef HEAD@{9}: pull upstream master: Fast-forward
c1deded HEAD@{10}: checkout: moving from gr8987 to master
25ac914 HEAD@{11}: commit: NotificationName changed
c651d22 HEAD@{12}: merge master: Merge made by the 'recursive' strategy.
ec0ff91 HEAD@{13}: checkout: moving from master to gr8987
c1deded HEAD@{14}: pull upstream master: Fast-forward
5a5781e HEAD@{15}: checkout: moving from gr8987 to master
ec0ff91 HEAD@{16}: commit: properly dismissed keyboard
5a5781e HEAD@{17}: checkout: moving from xhh990 to gr8987
b70f51c HEAD@{18}: checkout: moving from x2480 to xhh990
f083ee0 HEAD@{19}: checkout: moving from gr8987 to x2480
5a5781e HEAD@{20}: checkout: moving from master to gr8987
5a5781e HEAD@{21}: checkout: moving from xhh990 to master
b70f51c HEAD@{22}: checkout: moving from master to xhh990
:...skipping...
7136d2c HEAD@{0}: checkout: moving from master to master
7136d2c HEAD@{1}: checkout: moving from xhh994 to master
7136d2c HEAD@{2}: merge master: Fast-forward
f50e2ef HEAD@{3}: checkout: moving from master to xhh994
7136d2c HEAD@{4}: pull upstream master: Fast-forward
f50e2ef HEAD@{5}: checkout: moving from xhh994 to master
f50e2ef HEAD@{6}: checkout: moving from master to xhh994
f50e2ef HEAD@{7}: checkout: moving from hh994 to master
f50e2ef HEAD@{8}: checkout: moving from master to hh994
f50e2ef HEAD@{9}: pull upstream master: Fast-forward
c1deded HEAD@{10}: checkout: moving from gr8987 to master
25ac914 HEAD@{11}: commit: NotificationName changed
c651d22 HEAD@{12}: merge master: Merge made by the 'recursive' strategy.
ec0ff91 HEAD@{13}: checkout: moving from master to gr8987
c1deded HEAD@{14}: pull upstream master: Fast-forward
5a5781e HEAD@{15}: checkout: moving from gr8987 to master
ec0ff91 HEAD@{16}: commit: properly dismissed keyboard
5a5781e HEAD@{17}: checkout: moving from xhh990 to gr8987
b70f51c HEAD@{18}: checkout: moving from x2480 to xhh990
f083ee0 HEAD@{19}: checkout: moving from gr8987 to x2480
5a5781e HEAD@{20}: checkout: moving from master to gr8987
5a5781e HEAD@{21}: checkout: moving from xhh990 to master
b70f51c HEAD@{22}: checkout: moving from master to xhh990
5a5781e HEAD@{23}: checkout: moving from xhh990 to master
:

























7136d2c HEAD@{0}: checkout: moving from master to master
7136d2c HEAD@{1}: checkout: moving from xhh994 to master
7136d2c HEAD@{2}: merge master: Fast-forward
f50e2ef HEAD@{3}: checkout: moving from master to xhh994
7136d2c HEAD@{4}: pull upstream master: Fast-forward
f50e2ef HEAD@{5}: checkout: moving from xhh994 to master
f50e2ef HEAD@{6}: checkout: moving from master to xhh994
f50e2ef HEAD@{7}: checkout: moving from hh994 to master
f50e2ef HEAD@{8}: checkout: moving from master to hh994
f50e2ef HEAD@{9}: pull upstream master: Fast-forward
c1deded HEAD@{10}: checkout: moving from gr8987 to master
25ac914 HEAD@{11}: commit: NotificationName changed
c651d22 HEAD@{12}: merge master: Merge made by the 'recursive' strategy.
ec0ff91 HEAD@{13}: checkout: moving from master to gr8987
c1deded HEAD@{14}: pull upstream master: Fast-forward
5a5781e HEAD@{15}: checkout: moving from gr8987 to master
ec0ff91 HEAD@{16}: commit: properly dismissed keyboard
5a5781e HEAD@{17}: checkout: moving from xhh990 to gr8987
b70f51c HEAD@{18}: checkout: moving from x2480 to xhh990
f083ee0 HEAD@{19}: checkout: moving from gr8987 to x2480
5a5781e HEAD@{20}: checkout: moving from master to gr8987
5a5781e HEAD@{21}: checkout: moving from xhh990 to master
b70f51c HEAD@{22}: checkout: moving from master to xhh990
5a5781e HEAD@{23}: checkout: moving from xhh990 to master
:...skipping...
7136d2c HEAD@{0}: checkout: moving from master to master
7136d2c HEAD@{1}: checkout: moving from xhh994 to master
7136d2c HEAD@{2}: merge master: Fast-forward
f50e2ef HEAD@{3}: checkout: moving from master to xhh994
7136d2c HEAD@{4}: pull upstream master: Fast-forward
f50e2ef HEAD@{5}: checkout: moving from xhh994 to master
f50e2ef HEAD@{6}: checkout: moving from master to xhh994
f50e2ef HEAD@{7}: checkout: moving from hh994 to master
f50e2ef HEAD@{8}: checkout: moving from master to hh994
f50e2ef HEAD@{9}: pull upstream master: Fast-forward
c1deded HEAD@{10}: checkout: moving from gr8987 to master
25ac914 HEAD@{11}: commit: NotificationName changed
c651d22 HEAD@{12}: merge master: Merge made by the 'recursive' strategy.
ec0ff91 HEAD@{13}: checkout: moving from master to gr8987
c1deded HEAD@{14}: pull upstream master: Fast-forward
5a5781e HEAD@{15}: checkout: moving from gr8987 to master
ec0ff91 HEAD@{16}: commit: properly dismissed keyboard
5a5781e HEAD@{17}: checkout: moving from xhh990 to gr8987
b70f51c HEAD@{18}: checkout: moving from x2480 to xhh990
f083ee0 HEAD@{19}: checkout: moving from gr8987 to x2480
5a5781e HEAD@{20}: checkout: moving from master to gr8987
5a5781e HEAD@{21}: checkout: moving from xhh990 to master
b70f51c HEAD@{22}: checkout: moving from master to xhh990
5a5781e HEAD@{23}: checkout: moving from xhh990 to master
b70f51c HEAD@{24}: commit: defaulted Home Screen to Job homeView after app is brought:

回答1:

The blank lines and the :...skipping... lines are printed by the pager. You see these lines only when you give the pager an instruction to scroll, and then you later use the scrollbar of your terminal to go back to see "off-screen" output in your terminal.

If you do not use the pager, e.g., using git --no-pager reflog, you will not see these lines.