git - 是否有一个 git log 参数来过滤只有大变化的文件?

标签 git git-log

鉴于我在当前 git log --stat 中有 40 个文件,我只想显示那些有 500 个更改的文件。

示例输出:

.../MyModule.java                |   10 +
.../MySecondModule.java          |  560 +++++++++
.../MyThirdModule.java           |    5 +-
.../MyForthModule.java           |   12 +-

在这种情况下,我想过滤除 MySecondModule.java 之外的所有内容。这将是一个很好的命令,可以在我有一段时间没有处理过的存储库上运行,以了解主要工作的完成位置,因为我可能有成百上千个已更改的文件。

最佳答案

我没有看到执行此操作的任何命令行选项,但正如@sashoalm 所说,您可以将输出通过管道传输到另一个命令(或编写脚本)来执行这种过滤。

这有点适用于显示已更改 > 100 行的文件:

git log --stat | egrep "(commit|Author|Date|^    |^$|\|.*[0-9][0-9][0-9])"

关于git - 是否有一个 git log 参数来过滤只有大变化的文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22220286/

相关文章:

git - 如何临时更改远程推送的 git ssh 用户?

git - 如何将使用 'git replace'编辑的历史推送到远程

Git 设置并将本地 repo 推送到 virtualbox vm 远程 repo

git - 如何列出包含比特定日期更新的提交的所有分支?

git - 使用 git log 后,如何转到 Git Bash 中的下一个命令?

git - 将 git 提交与相同的消息结合起来?

svn - Starteam 到 X 迁移? (其中 X 是 : svn/git/hg/bzr . 之一 ..)

java - 列出自使用 JGit 从 master 创建分支以来的所有提交

Git 日志 - 如何过滤(排除)出现在 `git log` 中的文件? (git pathspec 魔法)

git - 在我的 repo 协议(protocol)中,最长的哈希前缀必须有多长才能防止重叠?