git lg 和 git tg

不好意思,在下又要开始聒噪几句了。

git lg —— 更人性化地展示git历史

首先,git log默认太挫了,仅仅是罗列一个个commit,我们可以对其进行定制。

我觉得git log的–graph –oneline –decorate 就工作得不错,就把git log –graph –oneline –decorate 设置为别名lg:

git config --global alias.lg 'log --graph --oneline --decorete'

虽然可以自定义log展示的格式,但是懒得搞……

UPDATE:

翻了下oh-my-zsh,抄过来一句:

git config --global alias.lg "log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%ar) <%an>%Creset' --abbrev-commit"

git tg —— 按版本号排序,显示近几个tag

其次,每次打tag的时候都需要git tag | sort -V 一下,而且还冲掉很多之前的命令和输出。所以要定制一个tg命令来按版本号排序输出最近几次tag。

虽然git有一个设置tag.sort 可以制定按版本号排序,但是仍然会显示所有的tag,这显然不太好。

所以还是得定制别名:

git config --global alias.tg '!git tag --sort=version:refname | tail -n 5'

由于我们用到了管道,所以必须在tg这个alias前加感叹号,让git知道这个alias是一个shell命令,而不是git的子命令。

Leave a Reply

Your email address will not be published. Required fields are marked *

− 1 = 5