无法在terminal中显示Git树

Killswitchcollective.com的旧文章,2009年6月30日 ,有以下input和输出

git co master git merge [your_branch] git push upstream ABCDE ABCDEFG \ ----> \ your branch CDE G 

我感兴趣的是如何在OS / X中不使用Gitk或Gitx的情况下,在terminal中获取类似树视图的提交。

你怎么能在terminal上得到树状的提交视图?

你怎么能在terminal上得到树状的提交视图?

 git log --graph --oneline --all 

是一个好的开始。

你可能会得到一些奇怪的信件。 它们是用于颜色和结构的ASCII码。 要解决这个问题,请将以下内容添加到.bashrc

 export LESS="-R" 

这样你就不需要使用Tig的ASCIIfilter了

 git log --graph --pretty=oneline --abbrev-commit | tig // Masi needed this 

Git-ready中基于文本的graphics包含其他选项:

 git log --graph --pretty=oneline --abbrev-commit 

git日志图形

关于你提到的文章,我会和Pod的回答一起去做:特别的手工制作的输出。


JakubNarębski在评论tig中提到, gig是一个基于ncurses的文本模式界面。 看到他们的发布 。
它在2007年添加了--graph选项 。

一个解决scheme是在.gitconfig创build一个别名,然后轻松地调用它:

 [alias] tree = log --graph --decorate --pretty=oneline --abbrev-commit 

当你下次打电话时,你会使用:

 git tree 

把它放在你的〜/ .gitconfig中而不必编辑它,你可以这样做:

 git config --global alias.tree "log --graph --decorate --pretty=oneline --abbrev-commit" 

(如果你不使用–global,它会把它放在当前回购的.git / config目录中。)

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

包含分支名称的可视化树。

使用它来添加它作为别名

 git config --global alias.tree "log --oneline --decorate --all --graph" 

你用它来打电话

 git tree 

Git树

tig

如果你想要一个交互式树,你可以使用tig 。 它可以通过OSX上的brew和Linux上的apt-get来安装。

 brew install tig tig 

这是你得到的:

在这里输入图像说明

保持短命令将使他们更容易记住:

 git log --graph --oneline