显示文件的历史记录?

可能重复:
使用Git版本控制查看文件的更改历史记录

有时候我想要浏览一个特定文件的历史。 在过去,我使用了P4V,这非常快速和直观。

  • 右键单击文件并选择历史记录。
  • 通过日期滚动,看到在日期的文件究竟是什么改变一个很好的差异。 简单。
  • 切换到git现在是一个艰巨的任务。

  • “git日志文件名”
  • 查看历史记录并选择一个日期,复制哈希
  • “git diff hash”
  • 在我感兴趣的文件中更改的内容滚动diff。
  • 不,不是这样,让我们​​尝试不同的日期 - 回到第2步,冲洗并重复。
  • 我搜索过,所以我尝试了一些常用的guis:github,gitk,gitg,git-gui。

    这些都不需要手动运行命令,但工作流程与此相同。 查看文件的历史记录; 查看提交; 搜索大量不相关文件的差异。 这是缓慢和重复的。

    所有数据都在回购中,所以我没有理由认为这个简单的常见用例不能更简化。

    任何人都可以推荐这样做的工具 - 或者更有效的方式来利用命令行来做我想做的事情?

    感谢您的任何建议。


    你有没有试过这个:

    gitk path/to/file
    

    您可以使用git log在搜索时显示差异:

    git log -p -- path/to/file
    

    git log -p会为每个选择的提交生成一个补丁(diff)。 对于单个文件,请使用git log --follow -p $file

    如果您正在寻找特定更改,请使用git bisect在log(n)视图中查找更改,方法是将提交数量分成一半,直到找到要查找的内容更改为止。

    如果你知道那是什么,也可以考虑使用git blame来回顾历史记录中的变化。 该命令显示影响某一行的最新版本。 如果有人随着时间的推移调整了某些东西,那么您可能不得不回溯到几个版本,以找到引入了某些东西的第一个变更,但这可能会为您提供一个良好的开端。

    最后,作为GUI的gitk确实会立即为我点击的任何提交显示补丁。

    在这里输入图像描述

    链接地址: http://www.djcxy.com/p/22655.html

    上一篇: show history of a file?

    下一篇: Is it possible to move/rename files in Git and maintain their history?