我在自己的机器上单独使用Git,我发现很难维护所有分支和提交的心理模型。我知道我可以通过git日志查看提交历史,但是有没有一种方法可以查看整个分支地形,就像这些ASCII映射一样,似乎到处都在用它来解释分支?
.-A---M---N---O---P
/ / / / /
I B C D E
\ / / / /
`-------------'
感觉就像有人来找我的存储库时,很难弄清楚到底发生了什么。
我猜我是受到了AccuRev的流媒体浏览器的影响…
我在~/中有这个git日志别名。查看图表历史记录:
[alias]
l = log --all --graph --pretty=format:'%C(auto)%h%C(auto)%d %s %C(dim white)(%aN, %ar)'
别名设置好后,git l将显示如下内容:
在Git 2.12+中,您甚至可以使用日志自定义图形的线条颜色。graphColors配置选项。
至于日志的格式,它类似于——oneline,只是增加了作者名称(关于.mailmap)和相对作者日期。注意%C(auto)语法,它告诉Git使用默认的颜色来提交哈希,等等,在Git >= 1.8.3中是支持的。
我99.999%的时间用gitlg来查看历史,0.001%用gitlog来查看历史。
我只是想分享两个可能有用的日志别名(从.gitconfig配置):
[Alias]
lg = log --graph --pretty=format:'%Cred%h%Creset %ad %s %C(yellow)%d%Creset %C(bold blue)<%an>%Creset' --date=short
hist = log --graph --full-history --all --pretty=format:'%Cred%h%Creset %ad %s %C(yellow)%d%Creset %C(bold blue)<%an>%Creset' --date=short
Git lg将看到当前的分支历史记录。
Git hist将看到整个分支历史。