git - 不要在 git grep 输出中显示 ^M(回车)

标签 git command-line grep config carriage-return

stash 可怕的^M来自 git diff 的字符,必须配置:

[core]
    whitespace = cr-at-eol

但它们仍然显示在git grep输出。
如何解决?

编辑——我正在运行的 grep 是:
git grep -i --line-number --break --heading -C 1 <PATTERN>

在 Cygwin(在 Windows 上)与 less -R作为寻呼机。

最佳答案

引用来自类似的 question (与 git diff 相关),

Change the core.pager to "tr -d '\r' | less -REX"



您可以像这样全局更改此配置,
git config --global core.pager "tr -d '\r' | less -REX"

或者只为 git grep 使用一次,
git -c core.pager="tr -d '\r' | less -REX" grep -i --line-number --break --heading -C 1 <PATTERN>

用户 Jason Pyeron提供详尽的解释 here .

关于git - 不要在 git grep 输出中显示 ^M(回车),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59325129/

相关文章:

linux - 比较两个文件中的列并打印不匹配

regex - grep 查找后面没有字符的字符

git - 如何查找或更改 Git 存储库服务器的 url

git - PowerShell - 捕获 Git 命令的 STDERR 输出

python - 如何使用 Python 在后台运行 DOS 批处理文件?

svn - 获取 svn 存储库详细信息

git - msysGit:为什么 git log 输出空行?

git - 直接提交到裸存储库

windows - 如何从 Emacs 中运行 Cygwin Bash Shell?

linux - 如何防止 grep 打印尾随换行符?