我想查看单个文件的历史记录,然后将该历史记录中的单个修订版与当前版本进行比较。
在命令行上,这很简单:
执行命令
git log -- <filename>
找到您要比较的版本,
执行命令
git diff <commitid> -- <filename>
但是如何才能使用 默认的Git gui工具, git gui 和 gitk 来完成?
我知道使用 gitk 的两种方法,但它们都非常笨重:
或者:
从“视图”菜单中选择“新建视图”选项
在标有输入要包含的文件和目录的框中输入文件的完整路径,每行一个,
通过查看顶部窗格中突出显示的项目找到要比较的版本,然后单击它以将其选中,
右键单击当前版本并选择 Diff selected - &gt;此,
或者:
在右下方的窗格中选择树,
找到要查看的文件,右键单击该文件,然后选择仅突出显示,
通过查看顶部窗格中突出显示的项目找到要比较的版本,然后单击它以将其选中,
右键单击当前版本并选择 Diff selected - &gt;此,
点击右下方窗格中的文件,在差异输出中跳转到该文件,或手动滚动。
有比这更好的方法吗?
答案 0 :(得分:1)
您可以从命令行启动gitk
并将其范围限制为单个文件。
您还可以将输出限制为一组提交。
例如,要显示自<commit>
更改path/to/file
以来的更改,请尝试:
gitk <commit>.. -- path/to/file
有关详细信息,请参阅gitk
man page。