如何在 Git 中获取文件的版本树?

6
在ClearCase中,我只需要运行
branchlocation>cleartool vtree <filename>

当我使用SVN时,我可以通过右键单击文件并选择“版本历史记录”来查看该文件的版本树。版本树将弹出,并显示该文件的合并情况。我想在git中执行相同的操作。

我认为与git read-tree有关-但那似乎不是我要找的东西。

我的问题是:如何在git中获取文件的版本树?


你是指特定文件的所有更改吗?git log -- <文件名> - Joseph K. Strauss
gitk <filename> 但是准备好失望和困惑。 - Andrew C
谢谢Andrew - 你能把那个扩展成一个答案吗? - hawkeye
2个回答

7

在 "Git版本树:Gitk"中提到了gitk方法。

这个命令的问题是输出内容很容易变得过于庞大和复杂,难以阅读。
如果出现这种情况,您可以运行 gitk 只查看单个文件的更改。例如:

gitk --all FILENAME &

我见过的Git中最接近ClearCase版本树的是“在Git中查看完整版本树”,其中提到:

git log --oneline --graph --color --all --decorate

使用 crc8/GitVersionTree 工具,将其转化为:

https://camo.githubusercontent.com/0cf835a38473b6caa9b39fe59a7088d3dcb70f09/68747470733a2f2f7261772e6769746875622e636f6d2f637263382f47697456657273696f6e547265652f6d61737465722f73616d706c655f6776742e706e67

您还可以使用图形工具,这些工具在 "如何使用LibGit2(Sharp)为Git存储库构建版本树" 中有提及。


谢谢VonC - 你对我所有的ClearCase问题都非常了解。 - hawkeye

0
gitk --all $file
gitk --all $dir

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接