Linux上的git是否有GUI工具可以显示特定文件的历史记录,包括提交和实际差异/更改?文件的完整历史记录,包括重命名/移动前的历史记录。
如果不是,如果我在重命名/移动之前知道文件路径/名称,是否可以查看此历史记录?
如果不是,有没有办法在没有GUI工具的情况下执行此操作?
到目前为止,我已尝试使用gitk --follow <file-path>
,但这并未显示每次提交,并且在重命名/移动之前它并未显示差异。
答案 0 :(得分:1)
除--follow
之外,gitk
接受相同的git log
选项,因此您可以浏览-C
和-M
选项以影响启发式Git用于检测重命名/副本。
关于以下问题,
只需使用git log --follow [-C[n]] [-M[n]] -- path/to/file
可以手动生成这个差异:
$ git diff oldcommit:an/old/path nwcommit:a/new/path
...可用于区分重命名的文件的内容
来自“an / old / path”的提交newcommit
中的“a / new / path”记录(最后)
在提交oldcommit
。