使用git grep时自动换行

时间:2011-10-21 17:16:18

标签: linux git terminal

我正在尝试从终端运行git grep(使用Titanium)。结果没有包裹并在窗口被切断,所以我什么都看不懂。我尝试搞乱配置,但无法得到任何东西。如何将这些grep结果包装好?

3 个答案:

答案 0 :(得分:6)

您是否在core.pager中设置了.gitconfig?如果您使用less,则可以通过按键盘上的右箭头键查看额外字符。

修改:即使我取消设置core.pagergit grep似乎默认调用less -S

编辑2:哎呀,正如Keith Thompson指出less默认包装行。从手册页:

   -S or --chop-long-lines
          Causes lines longer than the screen width to be  chopped  rather
          than  folded.  That is, the portion of a long line that does not
          fit in the screen width is not shown.  The default  is  to  fold
          long lines; that is, display the remainder on the next line.

答案 1 :(得分:3)

尝试通过cat管道输出。

答案 2 :(得分:0)

使用较少的寻呼机,git grep已经能够将选项传递给所述寻呼机:

-e
  

下一个参数是模式   此选项必须用于以-开头的模式,并且应该在将用户输入传递给grep的脚本中使用。

启动git 2。0。1(2014年6月25日),这也适用于不区分大小写的git grep

请参阅commit f7febbe中的Johannes Schindelin (dscho)

git grep -O -i:如果寻呼机是' less',请通过' -I'选项

  

<command>恰好是魔术字符串&#34; less&#34;,今天

git grep -O<command> -e<pattern>
  

有用地将+/<pattern>传递给less,以便您可以使用 n shift + n 在文件中导航结果击键。

唉,对于不区分大小写的比赛,这并没有做正确的事情 即。

git grep -i -O<command> -e<pattern>
  

对于这种情况,我们应该将--IGNORE-CASE传递给&#34; less&#34;所以 n shift + n 可以在结果之间移动而忽略模式中的大小写。

     

原始修补程序来自msysgit并使用&#34; -i&#34;,但这不是因为缺乏对#34; -I&#34;的支持。但它只是忽略了它应该工作,即使模式包含大写字母。