它似乎插入更少的空行,越接近我鍵入命令到終端窗口的底部。如果我在終端窗口的頂部鍵入它,它會插入空白線的幾乎整個窗口高度;如果我在最底部鍵入它,則不會插入空行。msysGit:爲什麼git log輸出空行?
看起來好像尋呼機程序將輸出推送到終端窗口的底部,但我希望輸出正好在我的命令之下或在頂部,就像在Linux git中一樣。
我可以通過使用git --no-pager log
得到預期的行爲,但是如果我想使用尋呼機呢?
它似乎插入更少的空行,越接近我鍵入命令到終端窗口的底部。如果我在終端窗口的頂部鍵入它,它會插入空白線的幾乎整個窗口高度;如果我在最底部鍵入它,則不會插入空行。msysGit:爲什麼git log輸出空行?
看起來好像尋呼機程序將輸出推送到終端窗口的底部,但我希望輸出正好在我的命令之下或在頂部,就像在Linux git中一樣。
我可以通過使用git --no-pager log
得到預期的行爲,但是如果我想使用尋呼機呢?
只是爲了增加一些元素:
msysgit已經在issue 29回到一年前討論替代遊戲機(2009年中:mintty,但僅適用於cygwin,capturing window I/O)。
issue 369提到選項「git config pager.log off
」以禁用「log」的分頁,這對於某些類似於OP提到的場景可以派上用場。
類似的問題正在討論,現在(2010年5月)在issue 484(不是別人SO user kusma,他在評論中指出;))
我可以重現這一點,但我不認爲這是git本身的問題。這是 傳呼機;在msys上少了一些嚴重的問題。用更少的顯示, 罪魁禍首一些實驗似乎是-R標誌:
$ git --no-pager diff --color=always HEAD~1 TestSegmentedText.java | less -R
這就是尋呼機的行爲。默認情況下,Git輸出通過一個紙張傳送,該紙張的行爲與您描述的方式相同。 (你可以嘗試找到另一個尋呼機像你想要的行爲,並使用它作爲您的尋呼機代替。)
在Linux中似乎並不是這樣的情況 - 例如,我可以使用'git log --grep = ...'和一個只匹配一個提交的模式,它似乎可以調用尋呼機(我得到(END)並且必須按q),但不消耗整個終端。說實話,實際上並不確定它是如何工作的。 – Cascabel 2010-05-24 18:22:08
莫非只是在窗戶尋呼機或終端的神器? (尋呼機肯定是被調用的,對嗎?) – Cascabel 2010-05-24 18:18:42
據我所知,是的。如果我使用--no-pager,輸出是不同的。 msysGit在bin \文件夾中有一個less.exe,但它似乎與Linux版本的less不同(如果這是被調用的尋呼機)。 – 2010-05-24 18:35:25