4

我有一组不同类型日志的别名,例如:

lg = log --graph --pretty=format:'%C(cyan)%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(red)<%an>%Creset' --abbrev-commit --date=relative
unreleased = !git --no-pager log --graph --pretty=format:'%C(cyan)%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(red)<%an>%Creset' --abbrev-commit --date=relative release..master

日志别名有很多种,但大多数都使用相同的格式。如何使用公共部分的内容定义局部变量?

理想情况下,我想避免为此使用环境变量

4

1 回答 1

3

根据这个问题git-config不支持变量的扩展。但是,您可以做的是使用公共部分定义别名:

lg = log --graph --pretty=format:'%C(cyan)%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(red)<%an>%Creset' --abbrev-commit --date=relative

然后将更多别名定义为使用公共别名的 shell 命令:

unreleased = !git --no-pager lg release..master

顺便说一句,指定--date=relative没有效果,因为%cr在您的日志格式中,根据定义,它是一个相对日期。这也意味着--date=short,例如,将没有效果。%cd如果您希望任何其他别名能够更改日期格式,则需要使用。

于 2014-04-07T00:06:55.880 回答