git:获取一个特定文件中已修改的文件列表

git:获取一个特定文件中已修改的文件列表,git,git-log,Git,Git Log,我想检查哪些文件与一个特定文件同时被修改。具体地说,我想获得这个特定文件的历史记录,对于这个历史记录的每次提交,我想知道哪些文件受到影响 当我执行git log--name only时,我会获得提交的完整历史记录,以及每次提交时已修改的文件列表 现在,如果我执行git log,我将获得涉及此特定文件的提交的历史记录 git log--仅名称,但是,不包括每个提交修改的文件的完整列表。相反,它只显示了,老实说,这是毫无用处的。 有没有办法使此命令包含所有文件?您可以通过管道传输这两个命令 $ gi

我想检查哪些文件与一个特定文件同时被修改。具体地说,我想获得这个特定文件的历史记录,对于这个历史记录的每次提交,我想知道哪些文件受到影响

当我执行git log--name only时,我会获得提交的完整历史记录,以及每次提交时已修改的文件列表

现在,如果我执行git log,我将获得涉及此特定文件的提交的历史记录

git log--仅名称
,但是,不包括每个提交修改的文件的完整列表。相反,它只显示了
,老实说,这是毫无用处的。
有没有办法使此命令包含所有文件?

您可以通过管道传输这两个命令

$ git log --format="%h" <file-name> | xargs git show --name-only
$git log--format=“%h”| xargs git show--name only
在这里:

git log--format=“%h”:选择更改给定文件的提交sha


xargs git show--name only:将选定的提交作为参数并显示完全更改的文件名。

使用
git rev list
列出影响特定路径的提交,然后使用
git show
在每次提交中修改所有文件:

git show--name only$(git rev list HEAD--PATH)

同样,您也可以使用工具(基于UI的git工具,类似于TortoiseSVN)

安装龟甲后-

  • 右键单击该文件,然后进入“龟甲”菜单

  • 单击显示日志

  • 它将显示该文件的提交历史以及这些提交中包含的其他文件。它还将显示文件中的更改